android fragmenttabhost 是可以滑动的吗
发布网友
发布时间:2022-04-25 21:47
我来回答
共3个回答
热心网友
时间:2022-04-28 10:47
能不能滑动看一下代码:
package com.example.fragmentpageadapter;
import java.util.List;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentActivity;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentPagerAdapter;
import android.support.v4.app.FragmentTabHost;
public class MainActivity extends FragmentActivity {
private FragmentTabHost mTabHost = null;;
private List list;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.fragments_tabs);
mTabHost = (FragmentTabHost) findViewById(android.R.id.tabhost);
mTabHost.setup(this, getSupportFragmentManager(), R.id.realtabcontent);
mTabHost.addTab(mTabHost.newTabSpec("0").setIndicator("新闻"),
NewsFragment.class, null);
mTabHost.addTab(mTabHost.newTabSpec("1").setIndicator("音乐"),
LifeFragment.class, null);
mTabHost.addTab(mTabHost.newTabSpec("2").setIndicator("人生"),
NewsFragment.class, null);
}
@Override
protected void onDestroy() {
// TODO Auto-generated method stub
super.onDestroy();
mTabHost = null;
}
}
2、fragments_tabs.xml
[html] view plain copy print?
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical">
android:id="@android:id/tabhost"
android:layout_width="match_parent"
android:layout_height="wrap_content">
android:id="@android:id/tabs"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="horizontal"/>
android:id="@+id/realtabcontent"
android:layout_width="match_parent"
android:layout_height="match_parent"
/>
3、NewsFragment.java
[java] view plain copy print?
package com.example.fragmentpageadapter;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
public class NewsFragment extends Fragment {
@Override
public void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
android.util.Log.d("mark", "onCreate()--------->news Fragment");
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// TODO Auto-generated method stub
View view = inflater.inflate(R.layout.news, null);
android.util.Log.d("mark", "onCreateView()--------->news Fragment");
return view;
}
@Override
public void onPause() {
// TODO Auto-generated method stub
super.onPause();
android.util.Log.d("mark", "onPause()--------->news Fragment");
}
}
热心网友
时间:2022-04-28 12:05
一直以来大概做带有导航类的应用的时候,都是使用TabActivity,但是,最新的SDK把TabActivity标成了deprecated,那只能重新寻找替代方案了,目前网上说的方案都是很混乱的
Fragment翻译过来叫碎片,但是我个人觉得可以理解为具有生命周期的View
由于Fragment是3.0以后的东西,对于适应低版本,那我们只能使用谷歌官方提供的android-support-v4.jar这个包了,最快捷的办法就是右击工程名,选择Android
Tools——add support
library...,即可添加这个包了
由于3.0以下的Activity里面没有对Fragment的支持,所以选择继承android-support-v4.jar包中的FragmentActivity,其功能跟3.0及以后的版本的Activity的功能一样
&DEMO下载:
底部导航加顶部导航,使用FragmentTabHost,Fragmetn,FragmentActivity组成,代码已经打包上传了
1、首先,底部导航的实现,FragmentTabHost和以前的TabHost的区别就是增加了对Fragment的支持,这里的实现和其他使用TabActivity是一样的,只是选项卡的切换已经从activity变成fragment了
2、这里主要讲一下顶部导航的实现,为了让大家对fragment更好的理解,这里我没有采用FragmentTabHost,而是放了三个Button
package
com.yyb.
import android.os.B
热心网友
时间:2022-04-28 13:40
是的,不过我一般习惯用viewpager 上面放几个按钮!个人习惯!