編輯:關於android開發
在AS工程中使用ActionBar
簡單實用:
1、功能清單文件中指定主題標簽屬性Theme.Holo或其子類
1 <application android :theme="@android:style/Theme.Holo.Light" >
2、可以自己指定顯示的圖標,默認是應用的圖標
1 <activity 2 android:name=".UI.MainActivity" 3 android:logo="@drawable/icon" />
3、在Activity中設置屬性
1 @Override 2 protected void onCreate(Bundle savedInstanceState) { 3 super.onCreate(savedInstanceState); 4 setContentView(R.layout.activity_main); 5 6 android.app.ActionBar actionBar= getActionBar(); 7 actionBar.show();//設置顯示 8 //actionBar.hide();//設置隱藏 9 actionBar.setHomeButtonEnabled(true); 10 actionBar.setDisplayShowHomeEnabled(true);//以上兩句是設置可以讓actionBar的圖標可以響應點擊事件 11 actionBar.setDisplayHomeAsUpEnabled(true);//這一行用於返回效果 12 }
也可以設置Activity標簽屬性來設置隱藏
1 <activity 2 android:name=".UI.WelComeActivity" 3 android:theme="@android:style/Theme.NoTitleBar">
4、在res資源目錄下創建一個menu文件夾,在menu文件夾創建一個actionbar_menu.xml
android:showAsAction :標簽屬性,根據需要自行設置
android:title :一般都設置,根據需要,但並不一定會顯示,根據showAsAction標簽影響
1 <?xml version="1.0" encoding="utf-8"?> 2 <menu xmlns:android="http://schemas.android.com/apk/res/android"> 3 <item 4 android:id="@+id/menu_seek" 5 android:showAsAction="always" 6 android:actionViewClass="android.widget.SearchView" 7 android:title="搜索" /> 8 <item 9 android:id="@+id/menu_history" 10 android:showAsAction="never" 11 android:title="查看歷史" /> 12 <item 13 android:id="@+id/menu_down" 14 android:showAsAction="never" 15 android:title="查看下載" /> 16 </menu>fRoom 會顯示在Item中,但是如果已經有4個或者4個以上的Item時會隱藏在溢出列表中。當然個 數並不僅僅局限於4個,依據屏幕的寬窄而定 never 永遠不會顯示。只會在溢出列表中顯示,而且只顯示標題,所以在定義item的時候,最好 把標題都帶上。 always 無論是否溢出,總會顯示。 withText withText值示意Action bar要顯示文本標題。Action bar會盡可能的顯示這個 標題,但是,如果圖標有效並且受到Action bar空間的限制,文本標題有可 能顯示不全。 collapseActionView 聲明了這個操作視窗應該被折疊到一個按鈕中,當用戶選擇這個按鈕時,這個操作視窗展開。否則, 這個操作視窗在默認的情況下是可見的,並且即便在用於不適用的時候,也要占據操作欄的有效空間。 一般要配合ifRoom一起使用才會有效果。
5、重寫回調方法,就可以顯示了
1 @Override 2 public boolean onCreateOptionsMenu(Menu menu) { 3 MenuInflater inflater = getMenuInflater(); 4 inflater.inflate(R.menu.actionbar_menu, menu); 5 return super.onCreateOptionsMenu(menu); 6 }
點擊顯示效果
6、重寫點擊回調方法,根據需要添加代碼
android.R.id.home默認指定的是左上角的圖標點擊響應
1 @Override 2 public boolean onOptionsItemSelected(MenuItem item) { 3 switch (item.getItemId()) { 4 case android.R.id.home: 5 Toast.makeText (this, "你點擊了“home”按鍵!" , Toast.LENGTH_SHORT).show() ; 6 return true; 7 case R.id. menu_seek: 8 Toast.makeText (this, "你點擊了“搜索”按鍵!" , Toast.LENGTH_SHORT).show() ; 9 return true; 10 case R.id. menu_down: 11 Toast.makeText (this, "你點擊了“查看下載”按鍵!" , Toast.LENGTH_SHORT).show() ; 12 return true; 13 case R.id. menu_history: 14 Toast.makeText (this, "你點擊了“查看歷史”按鍵!" , Toast.LENGTH_SHORT).show() ; 15 return true; 16 default: 17 return super .onOptionsItemSelected(item); 18 } 19 }
一般左上角的圖標點擊都是回退到主界面,在圖標的點擊響應添加代碼
1 case android.R.id.home: 2 //finish();這個只是簡單的銷毀了當前的界面 3 Intent upIntent = NavUtils.getParentActivityIntent(this);//獲取到跳轉至父Activity的Intent 4 //如果父Activity和當前Activity是在同一個Task中的,則直接調用navigateUpTo()方法進行跳轉 5 if (NavUtils.shouldUpRecreateTask(this, upIntent)) { 6 android.support.v4.app.TaskStackBuilder.create(this) 7 .addNextIntentWithParentStack(upIntent) 8 .startActivities(); 9 } else {//如果不是在同一個Task中的,則需要借助TaskStackBuilder來創建一個新的Task 10 upIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 11 NavUtils.navigateUpTo(this, upIntent); 12 } 13 Toast.makeText(this, "你點擊了“home”按鍵!", Toast.LENGTH_SHORT).show(); 14 return true;
27個漂亮的移動端注冊/登錄界面設計作品,27登錄界面設計作品英文:medium 作者:Muzli 譯者:設計達人 鏈接:http://www.s
Android之操作SQLite,androidsqlite1.SQLite簡介 SQLite是一款輕型的數據庫,是遵守ACID的關聯式數據庫管理系統,它的設計目標是嵌入
Android APK的安裝,AndroidAPK安裝打開packages\apps\PackageInstaller下的清單文件 <?xml version=1
Android中Canvas繪圖之Shader使用圖文詳解 概述 我們在用Android中的Canvas繪制各種圖形時,可以通過Paint.setShader(shad