首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Android >

Android ActionBar详解(4)->在ActionBar上添加UI组件

2013-10-10 
Android ActionBar详解(四)---在ActionBar上添加UI组件MainActivity如下:package cc.testsimpleactionbar

Android ActionBar详解(四)--->在ActionBar上添加UI组件

MainActivity如下:

package cc.testsimpleactionbar3;import android.os.Bundle;import android.app.Activity;import android.view.Menu;import android.widget.SearchView;import android.widget.SearchView.OnQueryTextListener;import android.widget.Toast;/** * Demo描述: * 在ActionBar上添加UI组件 *  * 通常有如下两种实现方法: * 1 在定义Action Item时,利用android:actionViewClass属性指定UI控件的实现类 * 2 在定义Action Item时,利用android:actionLayout属性指定UI控件的布局文件 *  * 参考资料: * 1 Android疯狂讲义(第二版) *   Thank you very much * */public class MainActivity extends Activity {    private SearchView mSearchView;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.main);}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {getMenuInflater().inflate(R.menu.action_menu, menu);//找到ActionBar上所添加的UI组件的方法:mSearchView=(SearchView) menu.findItem(R.id.searchItem).getActionView();mSearchView.setOnQueryTextListener(new OnQueryTextListener() {@Overridepublic boolean onQueryTextSubmit(String string) {Toast.makeText(MainActivity.this, "查询:"+string, Toast.LENGTH_SHORT).show();return false;}@Overridepublic boolean onQueryTextChange(String string) {return true;}});return true;}}

 

main.xml如下:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"   >    <TextView        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="在ActionBar上添加UI组件"        android:layout_centerInParent="true"     /></RelativeLayout>

 

analogclocklayout.xml如下:

<?xml version="1.0" encoding="utf-8" ?><AnalogClock    xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="wrap_content"android:layout_height="wrap_content"/>


action_menu.xml如下:

<?xml version="1.0" encoding="utf-8"?><menu xmlns:android="http://schemas.android.com/apk/res/android" >    <item        android:id="@+id/searchItem"        android:actionViewClass="android.widget.SearchView"        android:orderInCategory="100"        android:showAsAction="always"        android:title="搜索"/>    <item        android:id="@+id/analogClockItem"        android:actionLayout="@layout/analogclocklayout"        android:orderInCategory="100"        android:showAsAction="always"        android:title="时钟"/></menu>




 

热点排行