我想为我自己的Android应用程序实现一个操作栏,就像图片底部的那个。 我搜索了很多,但是出现了很多错误。
我尝试了一些库来获得一些帮助,例如:Greendroid和ActionBarSherlock,但它们都不起作用,或者我无法完美地使用它们! ..
我真的需要在我的应用中使用该操作栏。
如果有人能帮我提供一些样品或代码或向我解释,我将不胜感激。
非常感谢:) ..
答案 0 :(得分:3)
您可以使用SplitActionBar。您的应用程序支持在Android 4.0(API级别14)或更高级别上运行
修复方法是始终在顶部栏中放置一个项目,以阻止底部内容适应那里,从而将所有内容强制进入底栏。从另一个用户看这个示例项目:
<?xml version="1.0" encoding="utf-8"?
<manifest package="com.commonsware.android.actionbarbc"
xmlns:android="http://schemas.android.com/apk/res/android">
<application android:hardwareAccelerated="true"
android:icon="@drawable/cw"
android:label="@string/app_name">
<activity android:label="@string/app_name"
android:name=".InflationDemo"
android:uiOptions="splitActionBarWhenNarrow">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
<uses-sdk android:minSdkVersion="4"
android:targetSdkVersion="11" />
<supports-screens android:anyDensity="true"
android:largeScreens="true"
android:normalScreens="true"
android:smallScreens="true"
android:xlargeScreens="true" />
</manifest>
他将此代码用于他的活动:
private void setupActionBar() {
ActionBar actionBar = getActionBar();
ViewGroup v = (ViewGroup)LayoutInflater.from(this)
.inflate(R.layout.conversation_list_actionbar, null);
actionBar.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM,
ActionBar.DISPLAY_SHOW_CUSTOM);
actionBar.setCustomView(v,
new ActionBar.LayoutParams(ActionBar.LayoutParams.WRAP_CONTENT,
ActionBar.LayoutParams.WRAP_CONTENT,
Gravity.CENTER_VERTICAL | Gravity.RIGHT));
mUnreadConvCount = (TextView)v.findViewById(R.id.unread_conv_count);
}
http://developer.android.com/guide/topics/ui/actionbar.html#SplitBar
答案 1 :(得分:0)
我认为您需要查看名为SplitActionBar的内容。
此文档为here。
通过简要阅读它,它仅适用于“Narrow”屏幕,并且您声明要通过将uiOptions="splitActionBarWhenNarrow"
添加到AndroidManifest.xml文件的or元素中来使用拆分操作栏。
你可能会强迫它一直出现,但我不知道,因为我之前没有使用它。
我希望这会有所帮助。