本文实例为大家分享了AndroID Actionbar制作时钟的具体代码,供大家参考,具体内容如下
1. MainActivity.java
package com.example.days19actionbar07custom; import com.example.days19actionbar07custom.R; import androID.app.Activity;import androID.os.Bundle;import androID.vIEw.Menu;import androID.vIEw.MenuItem;import androID.vIEw.MenuItem.OnActionExpandListener;import androID.vIEw.VIEw;import androID.Widget.AnalogClock;import androID.Widget.SearchVIEw;import androID.Widget.SearchVIEw.OnqueryTextListener;import androID.Widget.TextVIEw; public class MainActivity extends Activity { private TextVIEw txtResult = null; @OverrIDe protected voID onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentVIEw(R.layout.activity_main); txtResult = (TextVIEw) findVIEwByID(R.ID.txtResult); } @OverrIDe public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.main,menu); /**************searchVIEw*****************/ // 通过ID找到相对应的MenuItem(SearchVIEw) MenuItem searchItem = menu.findItem(R.ID.action_search); SearchVIEw vIEw = (SearchVIEw) searchItem.getActionVIEw(); // 给SearchVIEw设置文字改变的监听 vIEw.setonqueryTextListener(new OnqueryTextListener() { @OverrIDe public boolean onqueryTextsubmit(String query) { return false; } @OverrIDe public boolean onqueryTextChange(String newText) { txtResult.setText("您正在搜索" + newText); return false; } }); /**************自定义条目*****************/ // 通过ID找到自定义布局MenuItem MenuItem customItem = menu.findItem(R.ID.action_custom_layout); // 通过menuItem的getActionVIEw()方法得到一个VIEw对象 VIEw v = customItem.getActionVIEw(); // 可以通过v的findVIEwByID()方法找到自定义布局中的相对应的控件 AnalogClock acclock = (AnalogClock) v.findVIEwByID(R.ID.acclock); // 给customItem菜单条目设置展开折叠监听 customItem.setonActionExpandListener(new OnActionExpandListener() { /** * 菜单条目被展开 * 返回为true代表该条目菜单可以被展开 * @OverrIDe */ public boolean onMenuItemActionExpand(MenuItem item) { txtResult.setText("时钟被展开"); return true; } /** * 菜单条目被折叠 * 返回为true代表该条目菜单可以被折叠 * @OverrIDe */ public boolean onMenuItemActionCollapse(MenuItem item) { txtResult.setText("时钟被折叠"); return true; } }); return true; } }
2. main.xml
<menu xmlns:androID="http://schemas.androID.com/apk/res/androID" > <item androID:ID="@+ID/action_search" androID:orderIncategory="100" androID:actionVIEwClass="androID.Widget.SearchVIEw" androID:showAsAction="always" androID:title="@string/it_search"/> <item androID:ID="@+ID/action_custom_layout" androID:actionLayout="@layout/my_layout" androID:orderIncategory="100" androID:icon="@drawable/ic_launcher" androID:showAsAction="always|collapseActionVIEw" androID:title="layout"/> </menu>
3. activity_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" androID:paddingBottom="@dimen/activity_vertical_margin" androID:paddingleft="@dimen/activity_horizontal_margin" androID:paddingRight="@dimen/activity_horizontal_margin" androID:paddingtop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <TextVIEw androID:ID="@+ID/txtResult" androID:layout_wIDth="wrap_content" androID:layout_height="wrap_content" androID:text="@string/hello_world" /> </relativeLayout>
4. my_layout.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" androID:paddingBottom="@dimen/activity_vertical_margin" androID:paddingleft="@dimen/activity_horizontal_margin" androID:paddingRight="@dimen/activity_horizontal_margin" androID:paddingtop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <AnalogClock androID:ID="@+ID/acclock" androID:layout_wIDth="wrap_content" androID:layout_height="wrap_content" androID:text="@string/hello_world" /> </relativeLayout>
文章后还为大家分享了Android ActionBar使用教程,大家可以进行参考学习。
以上就是本文的全部内容,希望对大家学习AndroID软件编程有所帮助。
总结以上是内存溢出为你收集整理的Android ActionBar制作时钟实例解析全部内容,希望文章能够帮你解决Android ActionBar制作时钟实例解析所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)