在这里,我们将给大家分享关于如何实现AndroidActionBar后退按钮?的知识,让您更了解android返回按钮的本质,同时也会涉及到如何更有效地actionBar后退按钮和android后退按
在这里,我们将给大家分享关于如何实现Android ActionBar后退按钮?的知识,让您更了解android 返回按钮的本质,同时也会涉及到如何更有效地actionBar后退按钮和android后退按钮之间的区别、ActionBar菜单项的动态可绘制图标? (Android,ActionBarSherlock)、Android ActionBar(ActionBarCompat)Spinner下拉列表?、Android ActionBar的按钮如何放在底部的内容。
本文目录一览:- 如何实现Android ActionBar后退按钮?(android 返回按钮)
- actionBar后退按钮和android后退按钮之间的区别
- ActionBar菜单项的动态可绘制图标? (Android,ActionBarSherlock)
- Android ActionBar(ActionBarCompat)Spinner下拉列表?
- Android ActionBar的按钮如何放在底部
如何实现Android ActionBar后退按钮?(android 返回按钮)
我有一个带有列表视图的活动。当用户单击项目时,将打开项目“查看器”:
List1.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> arg0, View arg1, int arg2,long arg3) { Intent nextScreen = new Intent(context,ServicesViewActivity.class); String[] Service = (String[])List1.getItemAtPosition(arg2); //Sending data to another Activity nextScreen.putExtra("data", datainfo); startActivityForResult(nextScreen,0); overridePendingTransition(R.anim.right_enter, R.anim.left_exit); }});
效果很好,但是在操作栏上,应用图标旁边的向后箭头没有被激活。我想念什么吗?
答案1
小编典典Selvin已经发布了正确答案。在这里,用漂亮的代码解决方案:
public class ServicesViewActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // etc... getActionBar().setDisplayHomeAsUpEnabled(true); } @Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case android.R.id.home: NavUtils.navigateUpFromSameTask(this); return true; default: return super.onOptionsItemSelected(item); } }}
该函数NavUtils.navigateUpFromSameTask(this)
要求您在AndroidManifest.xml文件中定义父活动
<activity android:name="com.example.ServicesViewActivity" > <meta-data android:name="android.support.PARENT_ACTIVITY" android:value="com.example.ParentActivity" /></activity>
请参阅此处以进一步阅读。
actionBar后退按钮和android后退按钮之间的区别
ActionBar actionBar = getSupportActionBar(); actionBar.setdisplayHomeAsUpEnabled(true);
它的工作方式更好……
例如:当我按下ActionBar后退按钮时,动画就在那里,但是如果我按下默认后退按钮则不然.
我可以从偏好活动中更改主题:如果我使用ActionBar后退按钮返回颜色立即更改,但默认情况下我必须重新启动应用程序….
如何让我的默认后退按钮表现得像ActionBar一样?
解决方法
另一个很好的提示是,“向上”按钮应始终将您带到应用程序的某个位置,而后退按钮可能会将您带到另一个应用程序.
您可能希望阅读本文以更好地理解其中的差异:http://developer.android.com/design/patterns/navigation.html
ActionBar菜单项的动态可绘制图标? (Android,ActionBarSherlock)
我在我的Android应用程序中使用ActionBarSherlock,目标是API级别10.我的应用程序用于移动数据捕获,有时用户无法立即提交新数据,但必须在手机上本地保存(例如,当连接性较差时).
每当手机本地存储“未提交”项目时,我想向用户显示一个菜单项(在操作栏中),以便他们可以点击进入UnsubmittedItems活动并手动触发上传.
理想情况下,此菜单项将包含未提交项目数量的图形表示(类似于电子邮件或短信应用程序如何显示未读邮件的数量作为徽章).目前,我只是在做:
unsubmittedMenuItem.setTitle( Integer.toString(numUnsubmitted) );
这有用,但有两个问题:我更喜欢使用Icon并将Title保持为可理解的东西(“未提交”),而且,我也希望在这里有一些自定义布局或设计,例如红圈数字背后的背景.
关于如何实现这一点的想法?到目前为止我的研究提出了两种可能
>使用为某些数字范围(例如1,2,3 …… 10)预先创建的级别列表drawable,然后使用unsubmittedMenuItem.getIcon().setLevel(numUnsubmitted)
>使用Bitmap和Canvas API完全动态地构建整个位图
这些是相似的,我将文本渲染成位图(像#1一样离线或像#2那样在飞行中)但是如果可能的话,利用ActionBar的“原生”文本渲染会很棒像在TextView中一样在它后面插入一个红色圆圈.
有没有办法为图标drawable设置自定义布局? (不是完整的actionLayout,仅用于图标?)
解决方法
>使用LayerDrawable
并在徽标图像顶部堆叠徽章图像.>编写一个从Drawable扩展的自定义类,并手动绘制图标和徽章.>在ImageView中使用带有图标的自定义操作项视图,并使用TextView覆盖徽章.
Android ActionBar(ActionBarCompat)Spinner下拉列表?
我正在使用像这样的微调器布局,
<Spinner android:id="@+id/SpinnerList" android:layout_width="fill_parent" android:layout_height="wrap_content" />
我的代码,
public class MainActivity extends ActionBaractivity implements OnItemSelectedListener{ private boolean mAlternateTitle = false; public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); ActionBar bar = getActionBar(); bar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST); Spinner spinner = (Spinner) findViewById(R.id.SpinnerList); ArrayAdapter<CharSequence> adapter = ArrayAdapter.createFromresource(this,R.array.locations,android.R.layout.simple_spinner_item); adapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); spinner.setAdapter(adapter); spinner.setonItemSelectedListener(this); } }
它在我的android galaxy ace中显示正常的微调器.我需要输出如下所示,
是那个位置android 2.3.请给出建议.
谢谢.
解决方法
在menu / main.xml中:
<item android:id="@+id/menu_spinner1" android:showAsAction="always" android:orderInCategory="1" android:actionView>
在活动中:
private MenuItem mSpinnerItem1 = null; @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. MenuInflater mi=getMenuInflater(); mi.inflate(R.menu.main,menu); mSpinnerItem1 = menu.findItem( R.id.menu_spinner1); View view1 = mSpinnerItem1.getActionView(); if (view1 instanceof Spinner) { final Spinner spinner = (Spinner) view1; spinner.setAdapter(ad1); spinner.setonItemSelectedListener(new OnItemSelectedListener() { @Override public void onItemSelected(AdapterView<?> arg0,View arg1,int arg2,long arg3) { // Todo Auto-generated method stub } @Override public void onnothingSelected(AdapterView<?> arg0) { // Todo Auto-generated method stub } }); } return true; }
Android ActionBar的按钮如何放在底部
ActionBar 中的Menu经常是跟三个圆点一起放在顶部Actionbar里面的,如果想放到下面,可以在Manifest.xml里面定义 android:uiOptions="splitActionBarWhenNarrow" 『API 14版本以上有效』
效果。
我们今天的关于如何实现Android ActionBar后退按钮?和android 返回按钮的分享已经告一段落,感谢您的关注,如果您想了解更多关于actionBar后退按钮和android后退按钮之间的区别、ActionBar菜单项的动态可绘制图标? (Android,ActionBarSherlock)、Android ActionBar(ActionBarCompat)Spinner下拉列表?、Android ActionBar的按钮如何放在底部的相关信息,请在本站查询。
本文标签: