标签: android-tabactivity

现在不推荐使用TabActivity,使用Fragments创建选项卡

我正在创建一个应用程序,它在屏幕底部有五个选项卡,每个选项卡打开一个不同的Activity.

我的选项卡活动扩展了我刚刚阅读的TabActivity,我不应该使用Fragments.

如何更改我的应用程序以使用Fragments?我已经阅读了android.developer.com上的信息,但我仍然不知道如何做到这一点.

android android-fragments android-tabactivity android-tabs

19
推荐指数
1
解决办法
2万
查看次数

Android TabHost上的徽章

我想实现与iPhone中相同的功能

在此输入图像描述

我在底部栏中实现了与iPhone相同的自定义Tabhost.我可以为Normal/Selected状态设置两个Icons,但是我需要动态图标,其中包含Image中给出的通知数量.

谢谢

android android-custom-view android-tabhost android-tabactivity

13
推荐指数
1
解决办法
2万
查看次数

如何为相同的选项卡调用选项卡Onclick和OnTabChange

在我的项目中,我有两个选项卡和一个按钮.对于两个选项卡,我有两个活动和按钮调用不同的活动.事情是我在第一个标签上显示按钮的结果.即tab0在tab0Event和按钮点击事件上也处于活动状态.并且我能够使用tabHost.setOnTabChangedListener更改选项卡事件,但现在我还想要的是,假设我点击按钮所以现在按钮视图正在显示(tab0处于活动状态)但是再次如果我点击tab0,tab0活动应该是显示.

我尝试了许多点击标签的解决方案,一个是

getTabWidget().getChildAt(getTabHost().getCurrentTab()).setOnClickListener
      (new View.OnClickListener() {

      @Override public void onClick(View v) {
      System.out.println(getTabHost().getCurrentTab());

      } });
Run Code Online (Sandbox Code Playgroud)

但是当我使用tabChnageListner这个代码时,tab更改不起作用,我得到了非常意外的结果.你能为我的问题建议解决方案.

谢谢.

用于更改选项卡的代码如下所示:(对于标签更改工作正常,需要在其中添加Tab Onclick)

public class TabLayoutUsingTabChangeEventActivity extends TabActivity {

        @Override
        public void onCreate(Bundle savedInstanceState) {

            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);                
            final TabHost tabHost = (TabHost)findViewById(android.R.id.tabhost);
            final TabHost.TabSpec sp1 = tabHost.newTabSpec("TAB1");
            TabHost.TabSpec sp2 = tabHost.newTabSpec("TAB2");

            //Creating First Tab
            Intent intent1 = new Intent(this, Tab1Activity.class);
            sp1.setIndicator("TAB1").setContent(intent1);
            tabHost.addTab(sp1);

            //Creating Second Tab 
            Intent intent2 = new Intent(this, Tab2Activity.class);
            sp2.setIndicator("TAB2").setContent(intent2);
            tabHost.addTab(sp2);               

            //Tab Changed Event
            tabHost.setOnTabChangedListener(new OnTabChangeListener(){
                 @Override
                 public void onTabChanged(String tabId) { …
Run Code Online (Sandbox Code Playgroud)

android android-tabhost android-tabactivity

11
推荐指数
2
解决办法
2万
查看次数

Android:TabActivity已弃用,请使用片段?

看来TabActivity现已弃用,我们需要使用Fragments.

我尝试使用标准的Activity但无法调用getTabHost.

所以看来我必须使用Fragments.但我有点困惑这是如何工作的.

我知道片段不是活动所以它们不在清单文件中?

所以我认为我不能对片段做startActivity?

有没有人知道解释tabHost和Fragments的一个很好的例子,我发现的所有例子和教程都只使用了tabactivity.

提前致谢

android android-layout android-tabhost android-tabactivity

9
推荐指数
1
解决办法
3万
查看次数

现在不推荐使用Tabactivity如何正确创建Tablayout?

自引入Fragments以来,不推荐使用TabActivity.

然而,Hello Views TabLayout教程仍然使用TabActivity,而API-Documentation没有明确的答案如何使用Fragments而不是TabActivity创建Tab Layout.

现在,如果不推荐使用TabActivity,您是如何构建Tablayouts的?

android android-fragments android-tabactivity

8
推荐指数
1
解决办法
2772
查看次数

如何检测已选择的选项卡按钮上的单击

我在点击TabActivity当前选中的标签时尝试获取Click事件.

我尝试下面的代码,但当我点击一个选项卡时,其他选项卡无法正常工作/单击.

    setupTab(new TextView(this), "Map");
    setupTab(new TextView(this), "Attacks");
    setupTab(new TextView(this), "Profile");
    setupTab(new TextView(this), "Headquater");

    int numberOfTabs = tabHost.getTabWidget().getChildCount();
    for(int t=0; t<numberOfTabs; t++){
    getTabWidget().getChildAt(t).setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {

                if(tabHost.getCurrentTab() == 0){
                    Toast.makeText(TabContext, ""+"i m in on clickkkkk" ,1500).show();
                    getTabHost().setCurrentTab(0);
                }
                if(tabHost.getCurrentTab() == 1){
                    Toast.makeText(TabContext, ""+"i m in on clickkkkk....$#@$#$" ,1500).show();
                    getTabHost().setCurrentTab(1);
                }

            }
        });
    }
Run Code Online (Sandbox Code Playgroud)

android android-tabactivity

8
推荐指数
1
解决办法
4983
查看次数

如何在Android 4.0中创建标签式布局?

现在不推荐使用TabActivity,使用片段构建选项卡式界面的正确方法是什么?我见过的每个教程都采用了不同的方法.其中一些是非常复杂的,将一个平凡的编程主题推向火箭科学领域.是什么赋予了?

我正在为ICS Android 4.0编写代码.

谢谢.

android android-tabhost android-fragments android-tabactivity

7
推荐指数
1
解决办法
5380
查看次数

"弃用"是什么意思?

我是android的初学者,我正在互联网上学习一些教程.

我正在研究"tabactivity",但在android网站上告诉我它已被弃用.

这意味着什么?它不再用了吗?

抱歉,英文不好谢谢

android android-tabactivity

7
推荐指数
1
解决办法
7061
查看次数

功能自定义标题:无法在API 11及更高版本上组合自定义标题

我有一个项目,我在其中设置:

  • minSdkversion设置为10
  • MainActivity是TabActivity

onCreate方法中的代码是这样的:

super.onCreate(savedInstanceState);

requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.main);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.custom_title);
...
Run Code Online (Sandbox Code Playgroud)

使用以前的设置,一切正常!但是,如果我将minSdkVersion设置为11或更高,则会发生以下异常:

android.util.AndroidRuntimeException: You cannot combine custom titles with other title features
Run Code Online (Sandbox Code Playgroud)

我不明白为什么这只是改变minSdkVersion.我在这个网站上对这个问题大加红了.我尝试过设置:

  • Theme.NoTitleBar在主布局中以及在Manifest文件中也是如此
  • 我将这3行放在所有可能的位置
  • 如果我评论第一行,当我在我的CustomTitle布局的TextView引用上调用某些内容时,会发生NullPointerException
  • 我尝试在theme.xml文件声明中设置"windowNoTitle"= true

由于我只使用API​​ 11提供的功能,我想在加载商店App之前将minSdk设置为11.我能怎么做 ??我需要帮助

编辑:使用清单中的minSdkVersion = 10和Theme.NoTitleBar,会发生同样的错误.删除它,一切都像以前一样.当API为11或更高时,任何人都可以提供工作代码(清单和活动代码)来设置自定义标题吗?太多了

android titlebar tabactivity custom-titlebar android-tabactivity

7
推荐指数
1
解决办法
1万
查看次数

如何在android中制作椭圆形tabhost

我试着按照预期的形状制作椭圆形tabhost.

在此输入图像描述

我尝试了以下代码.

    public class AndroidTabLayoutActivity extends TabActivity {
    TabHost tabHost;

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

        tabHost = getTabHost();
        TabHost.TabSpec spec;
        Intent intent;
        intent = new Intent().setClass(this, PhotosActivity.class);
        View tabView = createTabView(this, "Updates");
        spec = tabHost.newTabSpec("tab1").setIndicator(tabView).setContent(intent);
        tabHost.addTab(spec);

        tabView = createTabView(this, "Events");
        intent = new Intent().setClass(this, SongsActivity.class);
        spec = tabHost.newTabSpec("tab2").setIndicator(tabView)
                .setContent(intent);
        tabHost.addTab(spec);

        TabWidget tabWidget = (TabWidget) findViewById(android.R.id.tabs);
        final int tabChildrenCount = tabWidget.getChildCount();
        View currentView;
        for (int i = 0; i < tabChildrenCount; i++) {
            currentView = tabWidget.getChildAt(0);
            LinearLayout.LayoutParams currentLayout …
Run Code Online (Sandbox Code Playgroud)

android tabwidget tabactivity android-tabhost android-tabactivity

7
推荐指数
1
解决办法
752
查看次数