Android介面編程--使用活動條(ActionBar)

來源:互聯網
上載者:User

標籤:顯示   text   imp   https   options   state   cte   actionbar   was   

ActionBar的使用

1.啟動ActionBar(預設狀態下是啟動的)

  1.1 在Android設定檔(AndroidManifest.xml)中設定應用的主題為 ***.NoActionBar

       1.2 在代碼中控制ActionBar的啟動

    書上用getActionBar()寫的,但我試試的時候總是擷取不到,actionBar一直是空的

    問題解決:https://stackoverflow.com/questions/6867076/getactionbar-returns-null(不同的activity要用不同的方式擷取???)

    getSupportActionBar能成功擷取ActionBar;

public class MainActivity extends AppCompatActivity {    ActionBar actionBar;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        //獲得ActionBar        actionBar = getSupportActionBar();        Log.v("z",getSupportActionBar()+"");    }    public void hideActionBar(View view)    {        actionBar.hide();    }    public void showActionBar(View view)    {        actionBar.show();    }}    

 

    *******在布局頁面能直接在button中註冊onclick事件***********

<Button        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="hideActionBar"        android:onClick="hideActionBar"/>

 2.使用ActionBar顯示菜單選項

  2.1 app:showasaction 和 android:showasaction的區別:http://www.cnblogs.com/liaojie970/p/5718901.html

  2.2 資源檔寫了,但不顯示在actionbar上面:

       這個遇到了問題,想不明白,,,,

  問題找到解決辦法了:http://blog.csdn.net/huwei0518/article/details/48834795

  MenuItemCompat.setShowAsAction(menu.findItem(R.id.action),MenuItemCompat.SHOW_AS_ACTION_ALWAYS);(加了這麼一段代碼)

  /** * 載入菜單 * * @param menu * @return */
@Override public boolean onCreateOptionsMenu(Menu menu)
{
MenuInflater inflater = new MenuInflater(this); //裝填R.menu.my_menu對應的菜單,並添加到menu中
inflater.inflate(R.menu.actionbar, menu);
MenuItemCompat.setShowAsAction(menu.findItem(R.id.action),MenuItemCompat.SHOW_AS_ACTION_ALWAYS);
return super.onCreateOptionsMenu(menu);
}

  overflow就是actionbar上面的三個點,點擊後會出現菜單

  

  這個問題花了不少時間才找到解決辦法,但原理不是很懂,,,(出現這個問題的原因好像是V4和V7的問題,,,import android.support.v4.view.MenuItemCompat;
import android.support.v7.app.ActionBar;
import android.support.v7.app.AppCompatActivity;)

  代碼參考:https://www.aliyun.com/jiaocheng/71385.html

3

Android介面編程--使用活動條(ActionBar)

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.