簡體   English   中英

Android標簽欄有不同的片段和不同的操作欄圖標

[英]Android tab bar with different fragments and different action bar icons

問題描述和問題

我正在使用帶有操作欄的標簽活動。 在HOME選項卡中,我有GridView ,其中包含一些項目,如下圖所示(熱線,出租車,餐館等)

在此輸入圖像描述

Wen用戶點擊網格視圖中的項目我希望我的應用程序采取以下操作:

  • 將應用程序圖標更改為我按下的網格視圖項目圖像。
  • 更改圖標附近的測試
  • 在圖標附近添加標准后退按鈕,將返回到網格視圖屏幕。
  • 將選項卡片段更改為我指定的選項卡片段。

如下圖所示:

在此輸入圖像描述

由於我從不處理這類問題,請你舉個例子或與我分享一些如何做到這一點的鏈接? 我可以這樣做嗎?

這可能會有所幫助: Android studio - 是否可以添加指向設計師片段的標簽? 這不是你想要的,但是一個好的開始。 如果你願意做一些工作,你應該能夠得到你想要的東西。 如果你有一個基本的框架與這個問題和更具體的問題,我會很樂意幫助你^^

約翰

您可以檢查的第一個鏈接是這個

你應該閱讀更多關於ActionBar的內容

最后一件事是,如果你首先谷歌它並嘗試編寫代碼,當你遇到某個地方並與我們分享你的代碼並尋求幫助時,它會更好。

你必須使用actionbarsherlock庫。

在xml中使用android.support.v4.app.FragmentTabHostTabWidget ,如下所示:

<android.support.v4.app.FragmentTabHost 
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:ads="http://schemas.android.com/apk/lib/com.google.ads"
    style="@style/yourstyle"/>

    <FrameLayout
        android:id="@+id/realtabcontent"
        style="@style/realtabFrameContentStyle" />


       <TabWidget
          android:id="@android:id/tabs"
         style="@style/yourtabstyle" />

</android.support.v4.app.FragmentTabHost>

使用SherlockFragmentActivity顯示選項卡。

在活動代碼中使用以下代碼(最好在函數中)來設置ctionbar圖標和文本:

activity.getSupportActionBar().setDisplayShowCustomEnabled(true);
activity.getSupportActionBar().setCustomView(R.layout.your_action_barlayout);


((TextView) (activity.getSupportActionBar().getCustomView().findViewById(R.id.action_bar_title))).setText("your title");

        ImageView homeButton = ((ImageView) (activity.getSupportActionBar().getCustomView().findViewById(R.id.your_icon)));
        homeButton.setVisibility(View.VISIBLE);
        homeButton.setOnClickListener(new View.OnClickListener() {

            @Override
            public void onClick(View v) {
                Intent intent = new Intent(context, YourHOmeActivity.class);
                intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
                intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
                activity.startActivity(intent);
                activity.finish();
            }
        });
        ActionBar mActionBar = activity.getSupportActionBar();
        mActionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_STANDARD);
        mActionBar.show();

然后在片段onResume()方法中使用您的圖標和文本調用此函數。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM