gpt4 book ai didi

Android 选择器在 tabhost 中不起作用

转载 作者:行者123 更新时间:2023-11-30 03:32:38 25 4
gpt4 key购买 nike

我已经制作了一个简单的 tabhost 演示用于学习目的,我已经成功制作并运行了它,但我的问题是我放入 drawable 的图像应该像选择器中提到的那样出现,但它不起作用..它不甚至显示图像..!我的代码是:ma​​in.java

package com.example.tabhostdemo;

import android.os.Bundle;
import android.app.Activity;
import android.app.TabActivity;
import android.content.Intent;
import android.content.res.Resources;
import android.view.Menu;
import android.widget.TabHost;


public class TabHostActivity extends TabActivity {


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_tab_host);
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

// Create an Intent to launch an Activity for the tab (to be reused)
intent = new Intent().setClass(this, HomeActivity.class);
spec = tabHost.newTabSpec("home")
.setIndicator("HOME", res.getDrawable(R.drawable.home))
.setContent(intent);
tabHost.addTab(spec);

// Do the same for the other tabs

intent = new Intent().setClass(this, AboutActivity.class);
spec = tabHost.newTabSpec("about")
.setIndicator("ABOUT", res.getDrawable(R.drawable.about))
.setContent(intent);
tabHost.addTab(spec);


intent = new Intent().setClass(this, ContactActivity.class);
spec = tabHost
.newTabSpec("contact")
.setIndicator("CONTACT",
res.getDrawable(R.drawable.contact))
.setContent(intent);
tabHost.addTab(spec);

//set tab which one you want open first time 0 or 1 or 2
tabHost.setCurrentTab(0);


}

}

选择器*home.xml*

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- When selected -->
<item android:drawable="@drawable/home1"
android:state_selected="true" />
<!-- When not selected-->
<item android:drawable="@drawable/home2" />
</selector>

联系

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- When selected -->
<item android:drawable="@drawable/contact1"
android:state_selected="true" />
<!-- When not selected-->
<item android:drawable="@drawable/contact2" />
</selector>

about.xml

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<!-- When selected -->
<item android:drawable="@drawable/about1"
android:state_selected="true" />
<!-- When not selected-->
<item android:drawable="@drawable/about2" />
</selector>

最佳答案

你可以这样试试。

spec.setIndicator("HOME", setImageResource(R.drawable.home))

它会很好用。

要么你必须使用这个example .

真的很棒。

关于Android 选择器在 tabhost 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17183073/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com