0

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>
4

3 に答える 3

0

これを試して :-

<?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>
于 2012-12-28T04:54:02.863 に答える
0

問題が解決しました。getResources() を context.getResources() に変更するだけで、正常に動作します。

于 2012-11-15T08:03:11.380 に答える
0

コードを確認しましたが、正常に動作しています。何が問題なのかわかりません。このリンクを確認してください。Tabwidget の概念を理解するのに役立ちます。http://www.rdcworld-android.blogspot.in/2011/11/tabwidget-in-android-advance.html

明確な情報とともに、まだタブウィゲットの問題に直面していることをお知らせください。

于 2012-11-15T06:52:41.293 に答える