Android 在标签页题目上加图标
2010-03-13 07:12:00 来源:WEB开发网android做的没有iphone好看,现在都2.1版本了,依然是如此。
使用android的api,如果想在标签页的题目上带个图片,也只能是这样了。
这里使用了类似这样的代码:
tabHost.addTab(tabHost.newTabSpec("landscapes").setIndicator("风景",
getResources().getDrawable(R.drawable.a2))
其中a2是放置在res/drawable目录下的图形文件,比如a2.gif。
如果想要更复杂的布局,比如图片和文字是在同一行的,那么,就需要用到这个方法:
setIndicator(View view)
这样问题就复杂了,需要自定义布局,背景和格式,不过也不算难实现。
那么,如果想选择的tab图标是彩色的,未选中的图标是灰色的呢?也就是说想让图标是变化的。这就难办了。因为android本身没有提供这样的api调用。
里面提供了这样的代码,据说是可行的:
tabHost.setOnTabChangedListener(new OnTabChangeListener() {
public void onTabChanged(String tabId) {
if (TAB_MAP.equals(tabId)) {
ImageView iv = (ImageView)tabHost.getTabWidget().getChildAt(0).findViewById(android.R.id.icon);
iv.setImageDrawable(getResources().getDrawable(R.drawable.tab_map_black));
iv = (ImageView)tabHost.getTabWidget().getChildAt(1).findViewById(android.R.id.icon);
iv.setImageDrawable(getResources().getDrawable(R.drawable.tab_list_white));
} else if (TAB_LIST.equals(tabId)) {
ImageView iv = (ImageView)tabHost.getTabWidget().getChildAt(0).findViewById(android.R.id.icon);
iv.setImageDrawable(getResources().getDrawable(R.drawable.tab_map_white));
iv = (ImageView)tabHost.getTabWidget().getChildAt(1).findViewById(android.R.id.icon);
iv.setImageDrawable(getResources().getDrawable(R.drawable.tab_list_black));
}
}
});
- ››Android 当修改一些代码时,使用什么编译命令可以最...
- ››Android 如何添加一个apk使模拟器和真机都编译进去...
- ››Android 修改Camera拍照的默认保存路径
- ››Android 如何修改默认输入法
- ››android开发中finish()和System.exit(0)的区别
- ››Android手势识别简单封装类
- ››android中查看项目数字证书的两种方法
- ››Android中获取IMEI码的办法
- ››android 相机报错 setParameters failed
- ››Android重启运用程序的代码
- ››Android为ListView的Item设置不同的布局
- ››android bitmap与base64字符串的互相转换
更多精彩
赞助商链接