我已经尝试了Tab Layout示例,并且我还修复了示例中的少数拼写错误(并将所有活动添加到清单中).但是,当我在模拟器上运行它时,我会在第一行显示NullPointerException
tabHost.addTab(SPEC);
所以我的问题当然是.导致此异常的示例有什么问题?我正在使用Eclipse Galileo并将目标包设置为Android 1.5.到目前为止,我在android开发网站上的其他示例中没有其他任何问题.
package com.example.hellotabwidget;
import android.app.TabActivity;
import android.content.Intent;
import android.content.res.Resources;
import android.os.Bundle;
import android.widget.TabHost;
public class HelloTabWidget extends TabActivity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) throws RuntimeException {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Resources res = getResources(); // Resource object to get Drawables
TabHost tabHost = getTabHost(); // The activity TabHost
TabHost.TabSpec spec; // Reusable TabSpec for each tab
Intent intent; // Reusable Intent for each tab
// …Run Code Online (Sandbox Code Playgroud) 我有一个在TabHost中有3个标签的Android应用程序(文本标签,没有图像).我像这样设置标签:
intent = new Intent().setClass(this, AnnouncementsActivity.class);
spec = tabHost.newTabSpec("news").setIndicator("News").setContent(intent);
tabHost.addTab(spec);
Run Code Online (Sandbox Code Playgroud)
我启动了一个后台线程来从我的服务器获取通知,我想更新选项卡上的文本标签,告诉用户有多少新公告.例如,我想将Tab上的文本更改为"News(3)".如何访问和更改选项卡上的文本标签?
欢迎任何建议!
我是android的新手,我正在使用tabHost添加一些标签,它工作得很好但是当我在横向模式下旋转我的设备它也可以在那里工作但我不需要标签栏那里因为它覆盖了很多空间而且我也有谷歌广告,所以它们都覆盖了屏幕的一半,留下一点空间供用户进行交互.我需要的是一个解决方案,以某种方式隐藏标签栏,就像我们可以在iPhone上做一些空间用户进行交互.我需要一些紧急的解决方案.谢谢
我对Honeycomb的向后兼容性有疑问.我有一个支持2.1或更高版本的应用程序,似乎主要在Honeycomb上工作,除非他们启动TabActivity.
特别是,当我向TabHost添加标签时,我得到以下异常
android.content.res.Resources $ NotFoundException:资源ID#0x0
在查看抛出此异常的代码时,我发现它是带有标签和图标的选项卡规范.在代码内部,LabelAndIconIndicatorStrategy尝试对布局文件R.layout.tab_indicator进行充气,该文件似乎不可用.
TabHost.TabSpec spec; // Resusable TabSpec for each tab
Intent intent; // Reusable Intent for each tab
// Create an Intent to launch an Activity for the tab (to be reused)
intent = new Intent().setClass(_gameActivity, ScoreGameActivity.class);
intent.putExtra(GameChangerConstants.STREAM_ID, _stream.pk().toString());
// Initialize a TabSpec for each tab and add it to the TabHost
spec = _gameTabHost.newTabSpec("score_game").setIndicator("Score", res.getDrawable(R.drawable.icon_field_gloss)).setContent(intent);
_gameTabHost.addTab(spec);
Run Code Online (Sandbox Code Playgroud)
有没有为蜂窝创建标签的新方法,我不知道?我已经倾倒了文档,但没有看到任何表明我所做的事情的问题.
在此之前,我想避免使用片段,直到我们可以对UI小部件进行更全面的重构,并且我希望更好地理解这个问题.
我在我的应用程序中使用tabhost.我们可以为每个标签提供单独的宽度属性吗?即一个宽度较大而另一个宽度较小?
我正在开发一个TabHost包含的示例应用程序HorizontalScrollView.这是我的问题:
提前致谢!!!
我使用TabHost.以下代码称为AActivity.
intent = new Intent().setClass(this, AActivity.class);
spec = tabHost.newTabSpec("A").setIndicator("A", res.getDrawable(R.drawable.icon)).setContent(intent);
tabHost.addTab(spec);
Run Code Online (Sandbox Code Playgroud)
它在选项卡中.但在AActivity中,我称之为BActivity.BActivity将打开新页面,但不会在选项卡中打开.如何让它在标签框架上?AActivity使用下面的代码来调用BActivity:
it = new Intent(this, BActivity.class);
startActivity(it);
Run Code Online (Sandbox Code Playgroud) 我想像下图一样创建TabBar:

这里,所有标签栏都是正常的.只是他们是定制的.现在我想像上面的图像一样创建Tab栏.其中中心Tab被抬起.
那么我该怎么做才能实现呢?
如果有任何演示那么它会很好.
请帮我.
这是设置tabhost的代码,但是有两个问题
所有图标都不显示,即使我确定图像src是正确的
public class MainActivity extends FragmentActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
FragmentTabHost tabHost = (FragmentTabHost)findViewById(android.R.id.tabhost);
tabHost.setup(this, getSupportFragmentManager(), R.id.realtabcontent);
tabHost.addTab(tabHost.newTabSpec("restaurant").setIndicator("Restaurant",getResources().getDrawable(R.drawable.food)),PlaceList.class, null);
tabHost.addTab(tabHost.newTabSpec("attraction").setIndicator("Attraction",getResources().getDrawable(R.drawable.view)), PlaceList.class, null);
tabHost.addTab(tabHost.newTabSpec("map").setIndicator("Map",getResources().getDrawable(R.drawable.map)),Map.class,null);
tabHost.addTab(tabHost.newTabSpec("planner").setIndicator("Planner",getResources().getDrawable(R.drawable.plan)),Planner.class, null);
}
}
Run Code Online (Sandbox Code Playgroud)tabs android android-layout android-tabhost fragment-tab-host