av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

Android在fragment中編寫toobar的步驟詳解

瀏覽:4日期:2022-09-21 09:50:52

第一步的話就是首先導入我們的依賴的包:

compile ’com.android.support:appcompat-v7:23.3.0’

第二步的話就是準備我們的布局文件和我們的item在這的話我是將我們的toobar單獨的放在一個布局文件中的方便以后的調用以及將我們的主題改為我們noactionbar,同時在我們的主文件中進行引用修改為nopactionbar

Android在fragment中編寫toobar的步驟詳解

引用

Android在fragment中編寫toobar的步驟詳解

設置單獨的xml文件

Android在fragment中編寫toobar的步驟詳解

然后的話就是我們在我們的這個位置設置的是我們的啊就是toobar的單獨的一個文件代碼如下:

<?xml version='1.0' encoding='utf-8'?><androidx.appcompat.widget.Toolbar xmlns:android='http://schemas.android.com/apk/res/android' android: android:background='#00E109' android:minHeight='?attr/actionBarSize' android:layout_width='match_parent' android:layout_height='wrap_content'><!--現在的這個位置的話是我們的toobar的工具類我們將toobar的工具類創建出來后就是方便在我們的程序要用到的任何的地方調用--></androidx.appcompat.widget.Toolbar>

第三步: 然后的話就是編寫我們的就是啊item就是我們的菜單項

Android在fragment中編寫toobar的步驟詳解

<?xml version='1.0' encoding='utf-8'?><menu xmlns:android='http://schemas.android.com/apk/res/android' xmlns:app='http://schemas.android.com/apk/res-auto'> <item android:icon='@drawable/ic_baseline_youtube_searched_for_24' android: android:title='搜索' android:orderInCategory='80' app:showAsAction='ifRoom' /> <item android:icon='@drawable/ic_sharp_share_24' android: android:title='分享' android:orderInCategory='80' app:showAsAction='ifRoom' /> <item android:icon='@drawable/ic_baseline_drag_indicator_24' android: android:title='更多' android:orderInCategory='80' app:showAsAction='ifRoom' /></menu>

然后的話是我們的就是frgment的布局的代碼中進行引用:

Android在fragment中編寫toobar的步驟詳解

<?xml version='1.0' encoding='utf-8'?><LinearLayout xmlns:android='http://schemas.android.com/apk/res/android' xmlns:app='http://schemas.android.com/apk/res-auto' xmlns:tools='http://schemas.android.com/tools' android:layout_width='match_parent' android:layout_height='match_parent' android:orientation='vertical' tools:context='.ui.home.HomeFragment'><!--這個位置的話是那我們的首頁面的布局文件然后的話就是實現我們的首頁面的功能 todo 使用線性布局,然后的話是我們的就是搜索框--><!-- todo 在我們的這個位置就是將我們的toobar引入進來--> <include layout='@layout/toobarutil'/><!--todo 使用我們的scrollview進行布局--> <androidx.core.widget.NestedScrollView android:layout_width='match_parent' android:layout_height='match_parent'> <LinearLayout android:orientation='vertical' android:layout_width='match_parent' android:layout_height='match_parent'> <androidx.appcompat.widget.SearchView android:layout_width='match_parent' android:layout_height='wrap_content' tools:ignore='MissingConstraints' /><!--todo 在我們的這里的話使用我們的banner和我們的glide實現我們男的圖片的輪播--> <com.youth.banner.Banner android: android:layout_width='match_parent' android:layout_height='250dp' /> </LinearLayout> </androidx.core.widget.NestedScrollView></LinearLayout>

最后的話就是我們的java代碼部分了:

Android在fragment中編寫toobar的步驟詳解

package com.example.smartcityend.ui.home;import android.content.Context;import android.os.Bundle;import android.view.LayoutInflater;import android.view.Menu;import android.view.MenuInflater;import android.view.MenuItem;import android.view.SurfaceControl;import android.view.View;import android.view.ViewGroup;import android.widget.ImageView;import android.widget.TextView;import android.widget.Toast;import androidx.annotation.NonNull;import androidx.annotation.Nullable;import androidx.appcompat.app.AppCompatActivity;import androidx.appcompat.widget.Toolbar;import androidx.fragment.app.Fragment;import androidx.lifecycle.Observer;import androidx.lifecycle.ViewModelProvider;import com.bumptech.glide.Glide;import com.example.smartcityend.BuildConfig;import com.example.smartcityend.R;import com.youth.banner.Banner;import com.youth.banner.BannerConfig;import com.youth.banner.Transformer;import com.youth.banner.listener.OnBannerListener;import com.youth.banner.loader.ImageLoader;import java.util.ArrayList;import java.util.List;public class HomeFragment extends Fragment implements OnBannerListener { private Banner banner; private Toolbar toolbar; public View onCreateView(@NonNull LayoutInflater inflater,ViewGroup container, Bundle savedInstanceState) { View root = inflater.inflate(R.layout.fragment_home, container, false); return root; } //todo 接下來的話實現我們的圖片的輪播使用我們的banner,在我們的就是onviewcreate中編寫我們的代碼 @Override public void onViewCreated(@NonNull View view, @Nullable Bundle savedInstanceState) { super.onViewCreated(view, savedInstanceState); Banner(); // 調用輪播的方法 Toobar(); // 調用toobar的方法 } @Override public void onCreateOptionsMenu(@NonNull Menu menu, @NonNull MenuInflater inflater) { ((AppCompatActivity) getActivity()).getMenuInflater().inflate(R.menu.toobar_title,menu); return ; // todo 這個方法也是伴隨著我們的就是toobar存在的作用就是在我們的onsetmenuitemclickn的回調 } private void Toobar() { // 接下來的話就是調用我們的toobar的方法 找到我們的toobar的id toolbar = (Toolbar) getActivity().findViewById(R.id.toobar); // 調用actionbar的方法將actionbar設置為自己的toobar setHasOptionsMenu(true); ((AppCompatActivity) getActivity()).setSupportActionBar(toolbar); // 獲取actionbar的對象使用action的方法 ((AppCompatActivity) getActivity()).getSupportActionBar().setDisplayHomeAsUpEnabled(true); // 然后的話就是設置我們的toobar的主題等 toolbar.setTitle('首頁'); // 設置我們的副標題 toolbar.setSubtitle('智慧城市'); // 設置我們的導航菜單 toolbar.setNavigationIcon(R.drawable.ic_baseline_chevron_left_24); // 然后的話為我們的導航菜單添加點擊事件 toolbar.setNavigationOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { // 然后的話就是為我們的返回圖標添加點擊事件這里的話我們就為我們的返回圖標添加點擊返回事件 } }); // 設置菜單的就是啊彈出的樣式和背景 toolbar.setPopupTheme(R.style.Widget_AppCompat_ActionBar_Solid); // 設置我們的菜單 todo 要另外在我們的菜單的布局文件中添加我們的就是啊xml布局 toolbar.inflateMenu(R.menu.bottom_nav_menu); // 然后的話就是為我們的啊查菜單項設置點擊事件 toolbar.setOnMenuItemClickListener(new Toolbar.OnMenuItemClickListener() { @Override public boolean onMenuItemClick(MenuItem item) { // 然后的話就是為我們的菜單項設置我們的點擊監聽事件 switch (item.getItemId()){ case R.id.search: Toast.makeText( getContext(),'你點擊的是搜索按鈕', Toast.LENGTH_SHORT).show(); break; case R.id.share: Toast.makeText(getActivity(),'你點擊的是分享按鈕',Toast.LENGTH_LONG).show(); break; case R.id.other: Toast.makeText(getActivity(),'謝謝分享',Toast.LENGTH_LONG).show(); break; default: } return true; } }); } private void Banner(){ // todo step1: 找到我們的就是id,轉換 為成員變量方便在其他的位置調用 banner = (Banner) getActivity().findViewById(R.id.Banner); // 創建我們的存放圖片的數組將我們的圖片存放進去 int[] images = new int[]{ // 在我們的這個位置存放我們的圖片 R.mipmap.banner1,R.mipmap.banner2,R.mipmap.banner3,R.mipmap.banner4,R.mipmap.banner5 }; // 創建我們的列表放置我們的圖片的信息 List<Integer> iamgesList = new ArrayList<>(); // 然后的話就是使用我們的數組添加我們的圖片的信息 for(int i = 0; i<images.length; i++){ iamgesList.add(images[i]); // 將我們男的圖片添加到我們的列表中 // 設置我們的圖片加載器 banner.setImageLoader(new ImageLoader() { @Override public void displayImage(Context context, Object path, ImageView imageView) { // 圖片加載器 Glide.with(getActivity()).load(path).into(imageView); } }); // 然后的話就是我們的banner和我們的隔離的自帶的圖片輪播效果 banner.setBannerAnimation(Transformer.Default); // 將我們的圖片從列表中加載進來 banner.setImages(iamgesList); // 設置我們的顯示器的位置 banner.setIndicatorGravity(BannerConfig.CENTER); // 然后的話就是設置我們的切換的間隔時間 banner.setDelayTime(5000); // 設置我們的輪播監聽事件 banner.setOnBannerListener(this); //然后的話就是我們的圖片的輪播自動開始 banner.start(); } } // todo 在我們的這個位置重寫我們的onstart和onstop方法 banner @Override public void onStart() { super.onStart(); // 開始 banner.startAutoPlay(); } @Override public void onStop() { super.onStop(); // 停止 banner.stopAutoPlay(); } @Override public void OnBannerClick(int position) { // 設置我們的輪播圖的點擊提示 Toast.makeText(getActivity(),'你點擊了第'+(position+1)+'張輪播圖',Toast.LENGTH_LONG).show(); }}// todo 好現在的話我們可以看到我們的搜索框模塊和我們的輪播圖的模塊是已經創建完成了現在的話就是開始封裝我們的就是toobar模塊讓我們的toobar模塊可以在我們的各處調用

Android在fragment中編寫toobar的步驟詳解

到此這篇關于Android在fragment中編寫toobar的步驟詳解的文章就介紹到這了,更多相關Android fragment toobar內容請搜索好吧啦網以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持好吧啦網!

標簽: Android
相關文章:
主站蜘蛛池模板: 天堂网中文字幕在线观看 | 日日草夜夜草 | 亚洲精品一二三区 | 亚洲成人在线免费 | 日日天天| 日日干夜夜操天天操 | 亚洲综合二区 | 欧美a√| 99爱在线视频 | 欧美成人a∨高清免费观看 老司机午夜性大片 | 欧美日韩国产传媒 | 久操av在线 | 欧美三级三级三级爽爽爽 | 日本久久久久久 | 有码在线 | 美女黄色在线观看 | 国产精品久久久久久久久图文区 | a黄视频 | 我要看免费一级毛片 | 美女视频黄的免费 | 中文字幕乱码一区二区三区 | 亚洲精久久久 | 国产欧美精品一区二区三区 | 欧美日日| 国产日产精品一区二区三区四区 | 欧美日韩一区精品 | 天天躁日日躁性色aⅴ电影 免费在线观看成年人视频 国产欧美精品 | 国产色网 | 成人在线中文字幕 | 91国产在线播放 | 国产一级免费在线观看 | 91精品国产91久久久久久不卞 | 欧美日韩国产高清 | 一本色道精品久久一区二区三区 | 国产av毛片 | 精品一区二区免费视频 | 久久一级 | 亚洲国产精品一区二区第一页 | 亚洲一一在线 | 久草在线青青草 | 成人在线播放 |