亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁(yè) > 系統(tǒng) > Android > 正文

詳解Xamarin.Android 利用Fragment實(shí)現(xiàn)底部菜單

2019-10-21 21:25:12
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

本篇文章主要介紹了詳解Xamarin.Android 利用Fragment實(shí)現(xiàn)底部菜單,分享給大家,具體如下:

效果圖:

Xamarin,Android,Fragment,底部菜單

第一步:添加引用

引用 Crosslight.Xamarin.Android.Support.v7.AppCompat 這個(gè)包。

Xamarin,Android,Fragment,底部菜單

第二步:繪制Main和Fragment界面

fg_home.axml

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  android:orientation="vertical"  android:layout_width="match_parent"  android:layout_height="match_parent"  android:background="#FFFFFF">  <TextView    android:id="@+id/txt_content"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:gravity="center"    android:text="首頁(yè)"    android:textColor="#000000"    android:textSize="20sp" /></LinearLayout>

fg_label.axml

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  android:orientation="vertical"  android:layout_width="match_parent"  android:layout_height="match_parent"  android:background="#FFFFFF">  <TextView    android:id="@+id/txt_content"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:gravity="center"    android:text="貼簽"    android:textColor="#000000"    android:textSize="20sp" /></LinearLayout>

fg_mine.axml

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  android:orientation="vertical"  android:layout_width="match_parent"  android:layout_height="match_parent"  android:background="#FFFFFF">  <TextView    android:id="@+id/txt_content"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:gravity="center"    android:text="我的"    android:textColor="#000000"    android:textSize="20sp" /></LinearLayout>

fg_query.axml

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  android:orientation="vertical"  android:layout_width="match_parent"  android:layout_height="match_parent"  android:background="#FFFFFF">  <TextView    android:id="@+id/txt_content"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:gravity="center"    android:text="查詢"    android:textColor="#000000"    android:textSize="20sp" /></LinearLayout>

Main.axml

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  xmlns:tools="http://schemas.android.com/tools"  android:layout_width="match_parent"  android:layout_height="match_parent"  android:orientation="vertical">   <include    layout="@layout/main_left" /></LinearLayout>

main_left.xml

 

<?xml version="1.0" encoding="utf-8"?><android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"  android:id="@+id/dl_left"  android:layout_width="match_parent"  android:layout_height="match_parent"  android:background="#f0f0f0"> <!--主布局--> <LinearLayout   android:layout_width="match_parent"   android:layout_height="match_parent"   android:orientation="horizontal">   <RelativeLayout  android:layout_width="match_parent"  android:layout_height="match_parent"  android:id="@+id/relativelayout1"    android:fitsSystemWindows="true">   <RelativeLayout     android:id="@+id/ly_top_bar"     android:layout_width="match_parent"     android:layout_height="48dp"      android:visibility="gone">    </RelativeLayout>   <LinearLayout      android:id="@+id/ly_tab_bar"      android:layout_width="match_parent"      android:layout_height="50dp"      android:layout_alignParentBottom="true"       android:background="#FFFFFF"       android:orientation="vertical">    <View      android:layout_width="match_parent"      android:layout_height="2px"      android:background="#cccccc" />    <LinearLayout      android:layout_width="match_parent"      android:layout_height="40dp"      android:orientation="horizontal"      android:layout_marginTop="5dp">     <ImageView       android:id="@+id/iv_home"      android:layout_width="25.6dp"      android:layout_height="37.6dp"      android:src="@drawable/icon_home1"      android:layout_weight="1"/>     <ImageView       android:id="@+id/iv_query"      android:layout_width="25.6dp"      android:layout_height="37.6dp"      android:src="@drawable/icon_query1"      android:layout_weight="1"/>     <ImageView       android:id="@+id/iv_label"     android:layout_width="25.6dp"      android:layout_height="37.6dp"      android:src="@drawable/icon_label1"      android:layout_weight="1"/>     <ImageView       android:id="@+id/iv_mine"      android:layout_width="25.6dp"      android:layout_height="37.6dp"      android:src="@drawable/icon_mine1"      android:layout_weight="1"/>     </LinearLayout>   </LinearLayout>   <View     android:id="@+id/div_tab_bar"     android:layout_width="match_parent"     android:layout_height="2px"     android:background="#FFFFFF"     android:layout_above="@id/ly_tab_bar" />   <FrameLayout     android:layout_width="match_parent"     android:layout_height="match_parent"      android:id="@+id/fy_home"     android:layout_below="@id/ly_top_bar"     android:layout_above="@id/div_tab_bar" />   <FrameLayout     android:layout_width="match_parent"     android:layout_height="match_parent"     android:id="@+id/fy_query"      android:layout_below="@id/ly_top_bar"     android:layout_above="@id/div_tab_bar"/>   <FrameLayout     android:layout_width="match_parent"     android:layout_height="match_parent"     android:id="@+id/fy_label"      android:layout_below="@id/ly_top_bar"     android:layout_above="@id/div_tab_bar"/>   <FrameLayout     android:layout_width="match_parent"     android:layout_height="match_parent"     android:id="@+id/fy_mine"      android:layout_below="@id/ly_top_bar"     android:layout_above="@id/div_tab_bar"/>  </RelativeLayout> </LinearLayout> </android.support.v4.widget.DrawerLayout>

第三步:在value文件下創(chuàng)建Style,并且自定義 BaseAppTheme 樣式

<?xml version="1.0" encoding="utf-8" ?><resources>    <color name="primary">#1e89e7</color> <color name="primaryDark">#1976d2</color> <color name="red">#ff0000</color> <color name="white">#ffffff</color> <style name="BaseAppTheme" parent="Theme.AppCompat.Light.DarkActionBar">  <item name="windowActionBar">false</item>  <item name="windowNoTitle">true</item>  <item name="colorPrimary">@color/primary</item>  <item name="colorPrimaryDark">@color/primaryDark</item>  <item name="drawerArrowStyle">@style/AppTheme.DrawerArrowToggle</item> </style> <style name="AppTheme.DrawerArrowToggle" parent="Base.Widget.AppCompat.DrawerArrowToggle">  <item name="color">@android:color/white</item> </style></resources>

第四步:編寫(xiě)每個(gè)Fragment的后臺(tái),這里只寫(xiě)一個(gè)。

using System;using System.Collections.Generic;using System.Linq;using System.Text;using Android.App;using Android.Content;using Android.OS;using Android.Runtime;using Android.Util;using Android.Views;using Android.Widget;namespace BottomMuneDemo.Fragments{  public class HomeFragment : Fragment  {    private string content { get; set; }    public HomeFragment(string content)    {      this.content = content;    }    public override void OnCreate(Bundle savedInstanceState)    {      base.OnCreate(savedInstanceState);      // Create your fragment here    }    public override View OnCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState)    {      View view = inflater.Inflate(Resource.Layout.fg_home, container, false);      TextView txt_content = (TextView)view.FindViewById(Resource.Id.txt_content);      txt_content.Text = "首頁(yè)";      return view;    }  }}

第五步:在Main活動(dòng)中進(jìn)行設(shè)置。

using Android.App;using Android.Widget;using Android.OS;using Android.Support.V7.App;using BottomMuneDemo.Fragments;using Android.Views;namespace BottomMuneDemo{  [Activity(Label = "BottomMuneDemo", MainLauncher = true, Theme = "@style/BaseAppTheme")]  public class MainActivity : AppCompatActivity  {    private ImageView iv_home;    private ImageView iv_query;    private ImageView iv_label;    private ImageView iv_mine;    private FrameLayout fy_home;    private FrameLayout fy_query;    private FrameLayout fy_label;    private FrameLayout fy_mine;    HomeFragment fg1;    QueryFragment fg2;    LabelFragment fg3;    MineFragment fg4;    protected override void OnCreate(Bundle savedInstanceState)    {      base.OnCreate(savedInstanceState);       SetContentView(Resource.Layout.Main);      fy_home = (FrameLayout)FindViewById(Resource.Id.fy_home);      fy_query = (FrameLayout)FindViewById(Resource.Id.fy_query);      fy_label = (FrameLayout)FindViewById(Resource.Id.fy_label);      fy_mine = (FrameLayout)FindViewById(Resource.Id.fy_mine);      iv_home = (ImageView)FindViewById(Resource.Id.iv_home);      iv_query = (ImageView)FindViewById(Resource.Id.iv_query);      iv_label = (ImageView)FindViewById(Resource.Id.iv_label);      iv_mine = (ImageView)FindViewById(Resource.Id.iv_mine);      bindViews();      iv_home.PerformClick();    }    #region 底部菜單選項(xiàng)卡     //ui組件初始化與事件綁定    private void bindViews()    {      iv_home.Click += (s, e) => { onClick(iv_home); };      iv_query.Click += delegate { onClick(iv_query); };      iv_label.Click += delegate { onClick(iv_label); };      iv_mine.Click += delegate { onClick(iv_mine); };    }    //隱藏所有Fragment    private void hideAllFragment(FragmentTransaction fragmentTransaction)    {      if (fg1 != null) fragmentTransaction.Hide(fg1);      if (fg2 != null) fragmentTransaction.Hide(fg2);      if (fg3 != null) fragmentTransaction.Hide(fg3);      if (fg4 != null) fragmentTransaction.Hide(fg4);      iv_home.SetImageResource(Resource.Drawable.icon_home1);      iv_query.SetImageResource(Resource.Drawable.icon_query1);      iv_label.SetImageResource(Resource.Drawable.icon_label1);      iv_mine.SetImageResource(Resource.Drawable.icon_mine1);    }    //重置所有文本的選中狀態(tài)    private void setSelected()    {      iv_home.Selected = false;      iv_query.Selected = false;      iv_label.Selected = false;      iv_mine.Selected = false;    }    //單擊事件    public void onClick(View v)    {      FragmentTransaction fTransaction = FragmentManager.BeginTransaction();      hideAllFragment(fTransaction);      switch (v.Id)      {        case Resource.Id.iv_home:          setSelected();          iv_home.Selected = true;          iv_home.SetImageResource(Resource.Drawable.icon_home2);          if (fg1 == null)          {            fg1 = new HomeFragment("首頁(yè)");            fTransaction.Add(Resource.Id.fy_home, fg1);          }          else { fTransaction.Show(fg1); }          break;        case Resource.Id.iv_query:          setSelected();          iv_query.Selected = true;          iv_query.SetImageResource(Resource.Drawable.icon_query2);          if (fg2 == null)          {            fg2 = new QueryFragment("查詢");            fTransaction.Add(Resource.Id.fy_query, fg2);          }          else { fTransaction.Show(fg2); }          break;        case Resource.Id.iv_label:          setSelected();          iv_label.Selected = true;          iv_label.SetImageResource(Resource.Drawable.icon_label2);          if (fg3 == null)          {            fg3 = new LabelFragment("貼簽");            fTransaction.Add(Resource.Id.fy_label, fg3);          }          else { fTransaction.Show(fg3); }          break;        case Resource.Id.iv_mine:          setSelected();          iv_mine.Selected = true;          iv_mine.SetImageResource(Resource.Drawable.icon_mine2);          if (fg4 == null)          {            fg4 = new MineFragment("我的");            fTransaction.Add(Resource.Id.fy_mine, fg4);          }          else { fTransaction.Show(fg4); }          break;      }      fTransaction.Commit();    }    #endregion   }}

到這里就結(jié)束了,親測(cè)代碼有效,如有問(wèn)題請(qǐng)留言。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持VEVB武林網(wǎng)。


注:相關(guān)教程知識(shí)閱讀請(qǐng)移步到Android開(kāi)發(fā)頻道。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
√天堂资源地址在线官网| 亚洲午夜久久久久中文字幕| 久久久久久久久免费看无码| 国产精品中文字幕久久久| 亚洲色图影院| 午夜国产福利在线观看| 尤物视频在线看| 欧美日韩中文国产一区发布| 国产成人精品av久久| 久久久久亚洲综合| 99久久免费精品国产72精品九九| 美女视频黄a视频全免费观看| 色先锋av男人资源先锋影院| 欧美大片欧美激情性色a∨久久| 国内精品**久久毛片app| 三级网站视频在在线播放| 韩国无码av片在线观看网站| 亚洲精品一区二区三区区别| 亚欧精品在线视频| 欧美日韩久久一区| 97偷自拍亚洲综合二区| 女女同性女同一区二区三区91| 国产精品va在线播放| 少妇精品久久久久久久久久| 性欧美video视频另类| 欧美日本国产精品| 97caocao| 欧美日韩中文视频| 国产小视频精品| 蜜臀aⅴ国产精品久久久国产老师| 国产777精品精品热热热一区二区| 欧洲专线二区三区| 免费看毛片的网站| 2014亚洲片线观看视频免费| 一级性生活免费视频| 免费萌白酱国产一区二区三区| 色婷婷av一区二区三区之e本道| 国产伦精品一区二区三区照片| 亚洲欧洲偷拍精品| 日韩美女免费线视频| 中文精品视频一区二区在线观看| 色94色欧美sute亚洲线路二| 麻豆精品国产| 亚洲精品天堂成人片av在线播放| 久久露脸国语精品国产91| 欧美日韩激情小视频| 国模大尺度私拍在线视频| 亚洲成年电人电影网站| 性一交一乱一伦一色一情| 91亚洲精品在看在线观看高清| 在线观看免费国产视频| 国产91精品久久久久久| 日韩欧美在线播放| 欧美一级片黄色| 亚洲精品中文在线观看| 亚洲欧美日韩成人| 久操视频在线免费观看| 5g影院天天爽成人免费下载| 国产免费观看久久| 肉丝美足丝袜一区二区三区四| 成人免费网站在线| 欧美野外wwwxxx| xxx在线播放| 久久精品国产一区二区三区日韩| 吞精囗交69激情欧美| 亚洲人辣妹窥探嘘嘘| 亚洲国内欧美| 国产男女猛烈无遮挡免费视频| 狠狠88综合久久久久综合网| aa国产精品| 毛片毛片毛片毛| 日韩在线免费高清视频| 欧美精品久久久| 动漫av免费观看| 四虎成人永久地址| 日韩黄色影片| 日韩免费视频播放| 日本精品一区二区三区在线播放视频| 91情侣在线视频| 色屁屁www国产馆在线观看| 秋霞午夜剧场| 第一会所sis001亚洲| 国产成人毛毛毛片| 中文字幕免费视频| 欧美一区二区在线看| 国产精品毛片| 国产黄色片免费观看| 国产二级c片l毛片| 欧美性猛交久久久乱大交小说| 亚洲春色一区二区三区| 性欧美videossex精品| 91最新在线观看| 主播大秀视频在线观看一区二区| 亚洲一区二区三区综合| 国产女女做受ⅹxx高潮| 麻豆中文字幕在线观看| 欧美精品一区在线观看| 亚洲av永久无码国产精品久久| 制服丝袜综合日韩欧美| 色猫咪免费人成网站在线观看| 亚洲男女av一区二区| 亚洲 欧美 日韩 在线| 精品人妻一区二区三区日产| 亚洲wwww| 四虎影视最新网站入口在线观看| 男人先锋资源| 91久久久久久久| 成人av资源网站| 欧美hdxxx| 欧美孕妇与黑人孕交| 香蕉视频在线观看www| 激情小说中文字幕| 青青青国产视频| 香蕉成人啪国产精品视频综合网| 日韩av综合中文字幕| 亚洲欧美日韩精品一区| 在线欧美福利| 久久久久久久久久久免费精品| 亚洲国产尤物| 成人不卡免费视频| 欧美乱偷一区二区三区在线| 中文成人无字幕乱码精品区| 久久综合亚洲| 超碰在线电影| www.com操| 日本福利片在线观看| 精品蜜桃一区二区三区| 久久久人成影片一区二区三区观看| 青青草免费观看完整版高清| 日韩视频免费在线观看| 免费久久久久久久久| 精品视频在线导航| 视频一区二区欧美| a在线视频播放观看免费观看| 中午字幕在线观看| 欧美午夜精品理论片a级按摩| 在线看片国产福利你懂的| 成年免费视频| 成人自拍爱视频| 国模私拍国内精品国内av| 亚洲91网站| 一本大道av伊人久久综合| 99v久久综合狠狠综合久久| 99riav视频一区二区| 国产成人精品av在线| 国产精品乱码一区二区| 你懂的在线播放| 性欧美freehd18| 国产精品xxx电影| 国产片一区二区| 高清一区二区三区| 国产乱人伦精品一区二区在线观看| 一本色道久久99精品综合| 九七电影韩国女主播在线观看| 亚洲成国产人片在线观看| 国产精品久久久久9999小说| 最近中文字幕2019第二页视频| 日本免费黄色小视频| 成人免费一级视频| 成人黄色网址在线观看| 操操操干干干| 在线观看国产一区二区三区| 激情五月婷婷六月| 亚洲人成午夜免电影费观看| 亚洲视频国产精品| 亚洲中文字幕久久精品无码喷水| 欧美性在线视频| 中文在线免费看视频| 国产一卡2卡3卡4卡网站免费| 亚洲欧美综合久久久久久v动漫| 欧美一级视频免费观看| 蜜桃tv一区二区三区| 精品人妻无码一区二区| 国产精品久久久av久久久| 国产福利视频在线播放| 色综合久久88色综合天天看泰| 欧美精品密入口播放| 日韩一区二区精品| 国产成人免费av电影| 亚洲精品中文字幕在线播放| 日韩美女写真福利在线观看| 亚洲高清视频一区二区| 美女视频第一区二区三区免费观看网站| 国产成人在线看| 好吊色视频一区二区| 午夜啪啪免费视频| 亚洲欧洲精品在线| 日韩在线一二三区| 亚洲精品影视在线观看| 久久久国产精品久久久| 久久发布国产伦子伦精品| 91精品在线免费| 一区二区三区在线视频免费观看| 91精品国产福利在线观看麻豆| 日本女优天堂99伊人| 国产视频一区三区| 日本免费精品| 亚洲精品视频在线观看免费视频| 噜噜噜久久亚洲精品国产品小说| 北条麻妃国产九九九精品小说| 国产又黄又爽又无遮挡| 国产成人久久婷婷精品流白浆| 91精品国产综合久久久久久丝袜| 私拍精品福利视频在线一区| 成人c视频免费高清在线观看| 四虎最新网站| 久久99欧美| 亚洲一二三四区| 国产a久久麻豆| 精品久久久久久久久久久久包黑料| 性欧美长视频免费观看不卡| 你懂的好爽在线观看| 丝瓜av网站精品一区二区| 日本www高清| 成人免费观看男女羞羞视频| 国产精品nxnn| 久久精品无码中文字幕| 91在线免费看| 在线午夜精品自拍| 正在播放亚洲1区| 三级视频在线看| 成人动漫av在线| 欧美人与动性xxxxx杂性| 久久久久久久久久码影片| 欧洲一区二区在线| 午夜在线观看视频网站| 偷拍欧美精品| 亚洲欧美国产va在线影院| caoporn免费在线视频| 男女h黄动漫啪啪无遮挡软件| 成人一区二区三区仙踪林| 国产91精品看黄网站在线观看| 欧美成人一二区| 亚洲国产精彩视频| 国产无人区码熟妇毛片多| youjizz亚洲女人| 中文字幕制服丝袜一区二区三区| 日韩在线视频播放| 国产高清一级片| 欧美熟妇乱码在线一区| 二人午夜免费观看在线视频| 国产一区二区三区四区福利| 99热这里精品| 亚洲成人精品av| 天堂中文字幕av| 国产在线一区二区三区| 亚洲精华国产| 日本欧美视频在线观看| 91嫩草在线视频| 97热精品视频官网| 欧美a免费在线| 中文字幕在线永久在线视频| 日本在线视频www鲁啊鲁| 青娱乐精品视频| 国产精品一区在线播放| 五月天视频一区| 欧美精品18videos性欧| 8x8x成人免费视频| 日本黄色网网页| 欧美日韩一卡二卡| 国产人妻精品一区二区三区| 日本特黄久久久高潮| 成人动漫在线免费观看| 精品久久香蕉国产线看观看gif| 高清全集视频免费在线| a v视频在线观看| va天堂va亚洲va影视| 99精品国产一区二区| 久久婷婷国产精品| 久久久久久免费看| 色偷偷噜噜噜亚洲男人| 1769视频在线播放免费观看| 国产欧美在线播放| 成人亚洲综合| 国产午夜精品一区| 91沈先生作品| yellow中文字幕久久| 精品精品国产毛片在线看| 精品免费日产一区一区三区免费| 亚洲三级在线观看| 九色自拍论坛| 欧美成人精品一级| 人成在线免费视频| 黄色www视频| 一级毛片视频在线观看| 国产伦精品一区二区三区四区视频| 女同一区二区免费aⅴ| 国产视频999| 91看片在线播放| 欧美日韩喷水| bt天堂新版中文在线地址| 国产成人在线网站| 激情成人亚洲| 日本高清不卡aⅴ免费网站| 国产亚洲精品久久久久久牛牛| 国产精品一二三区在线| 99久热在线精品996热是什么| 欧美日韩精品是欧美日韩精品| 91精品秘密在线观看| 一区二区久久精品66国产精品| 日本一本草久p| 国产美女扒开尿口久久久| 成人看片视频| 毛片在线视频观看| 国产精品一区二区久久久久| 国产一区二区三区四| www.中文字幕.com| 无码人妻丰满熟妇精品区| 国产成人精品日本亚洲11| 亚洲av综合一区二区| 91蝌蚪国产九色| 亚洲aⅴ优女av综合久久久| 91视频免费版污| 久久九九电影| 丁香花视频在线观看| 美女的胸无遮挡在线观看| 日韩黄色碟片| 天堂成人娱乐在线视频免费播放网站| 一区二区不卡在线| 91小视频在线播放| 丰满人妻一区二区三区免费视频棣| 欧美三级三级三级| 午夜网站在线观看| 福利在线午夜| 成人欧美一区二区三区在线播放| 免费黄色网页| 制服丝袜专区在线| 国产日韩一区欧美|