日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Android如何實(shí)現(xiàn)美團(tuán)APP的底部滑動菜單-創(chuàng)新互聯(lián)

這篇文章主要為大家展示了“Android如何實(shí)現(xiàn)美團(tuán)APP的底部滑動菜單”,內(nèi)容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“Android如何實(shí)現(xiàn)美團(tuán)APP的底部滑動菜單”這篇文章吧。

創(chuàng)新互聯(lián)建站是一家專業(yè)提供西鄉(xiāng)塘企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站設(shè)計、做網(wǎng)站、成都外貿(mào)網(wǎng)站建設(shè)公司H5開發(fā)、小程序制作等業(yè)務(wù)。10年已為西鄉(xiāng)塘眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站制作公司優(yōu)惠進(jìn)行中。

在現(xiàn)在的APP的應(yīng)用中,類似仿美團(tuán)APP的底部滑動菜單,應(yīng)用是挺多的,例如QQ,微信,支付寶都應(yīng)用到。開發(fā)流程如下

1. 底部按鈕

底部按鈕使用RadioButton。

// 按鈕布局            

// style樣式

style樣式中的menueselector為背景選擇器,使按鈕選中變色

在Res目錄下新建文件夾(drawable-nodpi),在里面建立新的xml文件,選擇資源類型為Drawable的selector,在每一個selector中建立item選項

 

2. 中間的滑動窗口

 

3. 往滑動窗口添加按鈕對應(yīng)的Fragment, 并監(jiān)聽相應(yīng)事件

下面的代碼注意兩點(diǎn)

MainActivity需繼承于FragmentActivity,這樣才能找到其中的getSupportFragmentManager()方法    在書寫Fragment時切記引入的是android.support.v4.app.Fragment,而非android.app.Fragment(android.app.Fragment是在3.0引入的,為了兼容更低版本選android.support.v4.app.Fragment)

package com.lsw.wealthapp.activity;import android.support.v4.app.Fragment;import android.os.Bundle;import android.support.v4.app.FragmentActivity;import android.support.v4.app.FragmentManager;import android.support.v4.app.FragmentPagerAdapter;import android.support.v4.view.ViewPager;import android.widget.RadioButton;import android.widget.RadioGroup;import com.lsw.wealthapp.R;import com.lsw.wealthapp.fragment.CaptureFragment;import com.lsw.wealthapp.fragment.HomeFragment;import com.lsw.wealthapp.fragment.InvestmentFragment;import com.lsw.wealthapp.fragment.MoreFragment;import com.lsw.wealthapp.fragment.MyFragment;import java.util.ArrayList;import java.util.List;public class MainActivity extends FragmentActivity { // HomeFragmentIndex private static final int HomeViewPagerIndex = 0; // InvestmentFragmentIndex private static final int InvsetViewPagerIndex = 1; // CaptureFragmentIndex private static final int CaptureViewPagerIndex = 2; // MyFragmentIndex private static final int MyViewPagerIndex = 3; // MoreFragmentIndex private static final int MoreViewPagerIndex = 4; private ViewPager viewPager; // 主頁頁面 private HomeFragment homeFragment; // 投資頁面 private InvestmentFragment investmentFragment; //拍照頁面 private CaptureFragment captureFragment; // 我的頁面 private MyFragment myFragment; // 更多頁面 private MoreFragment moreFragment; // Fragment集合 private List fragmentList; // FragmentAdapter private MyPageFramgentAdapter myPageFramgentAdapter; // 菜單RadioGroup private RadioGroup radioGroup; // 主頁按鈕 private RadioButton rbtnHome; // 投資按鈕 private RadioButton rbtnInvest; // 拍照按鈕 private RadioButton rbtnCapture; // 我的按鈕 private RadioButton rbtnMine; // 更多按鈕 private RadioButton rbtnMore; @Override protected void onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  setContentView(R.layout.activity_main);  initViews(); } private void initViews() {  viewPager = (ViewPager) findViewById(R.id.viewPager);  homeFragment = new HomeFragment();  investmentFragment = new InvestmentFragment();  captureFragment = new CaptureFragment();  myFragment = new MyFragment();  moreFragment = new MoreFragment();  fragmentList = new ArrayList();  radioGroup = (RadioGroup) findViewById(R.id.rg_menu);  rbtnHome = (RadioButton) findViewById(R.id.rbtn_home);  rbtnInvest = (RadioButton) findViewById(R.id.rbtn_vest);  rbtnCapture = (RadioButton) findViewById(R.id.rbtn_photo);  rbtnMine = (RadioButton) findViewById(R.id.rbtn_mine);  rbtnMore = (RadioButton) findViewById(R.id.rbtn_more);  // 按鈕選中,viewPager展示對應(yīng)的頁面  radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {   @Override   public void onCheckedChanged(RadioGroup radioGroup, int i) {    switch (i) {     case R.id.rbtn_home:      viewPager.setCurrentItem(HomeViewPagerIndex);      break;     case R.id.rbtn_vest:      viewPager.setCurrentItem(InvsetViewPagerIndex);      break;     case R.id.rbtn_photo:      viewPager.setCurrentItem(CaptureViewPagerIndex);      break;     case R.id.rbtn_mine:      viewPager.setCurrentItem(MyViewPagerIndex);      break;     case R.id.rbtn_more:      viewPager.setCurrentItem(MoreViewPagerIndex);      break;    }   }  });  //將Fragment加入集合中  fragmentList.add(homeFragment);  fragmentList.add(investmentFragment);  fragmentList.add(captureFragment);  fragmentList.add(myFragment);  fragmentList.add(moreFragment);  FragmentManager fm = getSupportFragmentManager();  myPageFramgentAdapter = new MyPageFramgentAdapter(fm);  viewPager.setAdapter(myPageFramgentAdapter);  // viewPager發(fā)生改變,對應(yīng)的按鈕狀態(tài)變?yōu)檫x中  viewPager.setOnPageChangeListener(new ViewPager.OnPageChangeListener() {   @Override   public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {   }   @Override   public void onPageSelected(int position) {    switch (position) {     case HomeViewPagerIndex:      rbtnHome.setChecked(true);      break;     case InvsetViewPagerIndex:      rbtnInvest.setChecked(true);      break;     case CaptureViewPagerIndex:      rbtnCapture.setChecked(true);      break;     case MyViewPagerIndex:      rbtnMine.setChecked(true);      break;     case MoreViewPagerIndex:      rbtnMore.setChecked(true);      break;     default:      break;    }   }   @Override   public void onPageScrollStateChanged(int state) {   }  }); } // viewPager所需的適配器 class MyPageFramgentAdapter extends FragmentPagerAdapter {  public MyPageFramgentAdapter(FragmentManager fm) {   super(fm);  }  @Override  public Fragment getItem(int position) {   return fragmentList.get(position);  }  @Override  public int getCount() {   return fragmentList.size();  } }}

以上是“Android如何實(shí)現(xiàn)美團(tuán)APP的底部滑動菜單”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!


本文名稱:Android如何實(shí)現(xiàn)美團(tuán)APP的底部滑動菜單-創(chuàng)新互聯(lián)
網(wǎng)頁路徑:http://www.dlmjj.cn/article/cciohp.html