-
蓝色滑块那部分只需要三句就可以了,不需要那么长,如下: LinearLayout.LayoutParams lp = (LinearLayout.LayoutParams) mTabLine.getLayoutParams(); lp.leftMargin = (int) (positionOffset * mScreen1_3 + position * mScreen1_3); mTabLine.setLayoutParams(lp); 其中的onPageSelected中的position是四舍五入取值的,而onPageScroll中的position是向下取值。查看全部
-
1.android:layout_centerVertical="true"//相對於富佈局垂直居中 2.android:layout_alignParentRight="true"//在於父佈局右邊 3. Ctrl+shift+T查包名 4.代碼中去掉actionbar: requestWindowFeature(Window.FEATURE_NO_TITLE);查看全部
-
cxcxcxcx查看全部
-
一,建立三個Fragment和相應的xml文件 二。注意一定要導入v4的包 import android.support.v4.app.FragmentPagerAdapter; import android.support.v4.view.ViewPager; 三新建initView(): private void initView() { mViewPager = (ViewPager) findViewById(R.id.id_viewpager); mDatas = new ArrayList<Fragment>(); ChatMainTabFragment tab01 = new ChatMainTabFragment(); FriendMainTabFragment tab02 = new FriendMainTabFragment(); ContactMainTabFragment tab03 = new ContactMainTabFragment(); mDatas.add(tab01); mDatas.add(tab02); mDatas.add(tab03); mAdapter = new FragmentPagerAdapter(getSupportFragmentManager()) { @Override public int getCount() { return mDatas.size(); } @Override public Fragment getItem(int arg0) { return mDatas.get(arg0); } }; mViewPager.setAdapter(mAdapter); }查看全部
-
在MainActivity中去掉actinBar protected onCreate(Bundle savedInstanceState){ super.onCreate(saveInstanceState); //去掉ActionBar requestWindowFeature(Window.FEATURE_NO_TITLE); setContentView(R.layout.activity_main); }查看全部
-
可以这样简化 if (position==0) { lineParams.leftMargin=(int) (offset*width/3); }else if (position==1) { lineParams.leftMargin=(int) (offset*width/3+Screen1_3); } else if(position==2){ lineParams.leftMargin=(int) (offset*width/3+2*Screen1_3); }查看全部
-
老师再讲显示条的时候方法不够好… onPageScrolled中的第三个参数已经包含了它正好滚动的数据…也不用设置两个参数… leftMargin=position*mScreen1_3+positionOffsexpx查看全部
-
794613查看全部
-
喔喔喔喔喔喔查看全部
-
四种方式,建议第三种,第4已淘汰查看全部
-
选择v4下的包,以方便兼容低版本的API查看全部
-
主界面的代码,注意这里继承的是FragmentActivity,不是Activity。 public class MainActivity extends FragmentActivity{ private ViewPager mViewPager; private FragmentPagerAdapter mAdapter; private List<Fragment> mData; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); requestWindowFeature(Window.FEATURE_NO_TITLE); init(); } public void init(){ mViewPager = (ViewPager)findViewById(R.id.id_viewPager); mData = new ArrayList<Fragment>(); ChatTabFragment tab01 = new ChatTabFragment(); FriendTabFragment tab02 = new FriendTabFragment(); ContactTabFragment tab03 = new ContactTabFragment(); mData.add(tab01); mData.add(tab02); mData.add(tab03); mAdapter = new FragmentPagerAdapter(getSupportFragmentManager()) { @Override public Fragment getItem(int position) { return mData.get(position); } @Override public int getCount() { return mData.size(); } }; mViewPager.setAdapter(mAdapter); } }查看全部
-
主要在于ViewPager的使用: 一、利用FragmentPagerAdapter添加tab页面 二、其次是使用addPagerChangerListener方法添加页面切换的监听,在这里可以改变tab标题颜色,设置指示器的跟随。比如在onPageSelected方法中设置颜色的变化,其次是在onPageScrolled方法中利用ImageView的setTranslationX方法结合position参数和positionOffset设置ImageView的偏移即可 最后BadgeView(其继承自TextView)中的setTarget放将目标View从其父布局中抽出来,然后使用frameLayout包装二者的方法. private void forceShowOverflowMenu(boolean flag) { try { ViewConfiguration config = ViewConfiguration.get(this); Field menuKeyField = ViewConfiguration.class .getDeclaredField("sHasPermanentMenuKey"); if (menuKeyField != null) { menuKeyField.setAccessible(true); menuKeyField.setBoolean(config, flag); } } catch (Exception e) { e.printStackTrace(); } }查看全部
-
BadgeView下载地址,它实现消息数目提醒查看全部
-
xxx查看全部
举报
0/150
提交
取消