Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/197.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
选项卡主机图像悬停不工作Android_Android_Android Xml - Fatal编程技术网

选项卡主机图像悬停不工作Android

选项卡主机图像悬停不工作Android,android,android-xml,Android,Android Xml,我正在使用xml文件在选项卡主机中设置图像悬停。但这对我不起作用。请看一下下面我的代码,看看我是否忘记了什么或者代码中是否有错误 主要活动课 public class MainActivity extends TabActivity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentV

我正在使用xml文件在选项卡主机中设置图像悬停。但这对我不起作用。请看一下下面我的代码,看看我是否忘记了什么或者代码中是否有错误

主要活动课

public class MainActivity extends TabActivity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        TabHost tabHost = getTabHost();

        // Tab for Photos
        TabSpec photospec = tabHost.newTabSpec("Photos");
        // setting Title and Icon for the Tab
        photospec.setIndicator("Photos", getResources().getDrawable(R.drawable.icon_photos_tab));
        Intent photosIntent = new Intent(this, PhotosActivity.class);
        photospec.setContent(photosIntent);

        // Tab for Songs
        TabSpec songspec = tabHost.newTabSpec("Songs");
        songspec.setIndicator("Songs", getResources().getDrawable(R.drawable.icon_songs_tab));
        Intent songsIntent = new Intent(this, SongsActivity.class);
        songspec.setContent(songsIntent);

        // Tab for Videos
        TabSpec videospec = tabHost.newTabSpec("Videos");
        videospec.setIndicator("Videos", getResources().getDrawable(R.drawable.icon_videos_tab));
        Intent videosIntent = new Intent(this, VideosActivity.class);
        videospec.setContent(videosIntent);

        // Adding all TabSpec to TabHost
        tabHost.addTab(photospec); // Adding photos tab
        tabHost.addTab(songspec); // Adding songs tab
        tabHost.addTab(videospec); // Adding videos tab

    }

}
我的悬停XML文件

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

</selector>

我检查了你的代码,它工作正常。我不知道你有什么问题。请检查此链接。它将帮助您理解Tabwidget的概念


请告诉我您仍然面临tabwiget的问题,并提供清晰的信息。

问题已解决。我只是将getResources()更改为context.getResources(),效果很好。

试试这个:-

<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- selected state -->
    <item android:drawable="@drawable/normal_pressed"
          android:state_selected="true"
          android:state_pressed="false" />
    <!-- unselected state (default) -->
    <item android:drawable="@drawable/normal" />
</selector>


你说它不适合你是什么意思?它不会改变。一点也不设计我了解tab host的工作原理。我只是不知道为什么我的悬停代码不起作用。我能知道你是如何在drawable文件夹中实现你的photohover和photo的吗?我只是将photo粘贴到my drawable hdpi上,然后像我上面发布的那样实现它