我加入了SherlockActionBar到我的項目,增加了一些菜單項,並在模擬器中(4.0.3)正常工作,但它並沒有我的手機上(銀河S3) ;它只是不顯示。缺少SherlockActionBar dropdownmenu上的電話,工作在模擬器
我在我的清單的9最低SDK版本針對15:
<uses-sdk
android:minSdkVersion="9"
android:targetSdkVersion="15" />
<application
android:icon="@drawable/dimmiicon"
android:label="@string/app_name"
android:theme="@style/Theme.Sherlock.Light.DarkActionBar" >
代碼是相當簡單的,但也許我失去了一些東西。相關位...
import com.actionbarsherlock.app.ActionBar;
import com.actionbarsherlock.app.SherlockFragmentActivity;
import com.actionbarsherlock.view.MenuItem;
public class Launcher extends SherlockFragmentActivity implements OnUserAuthenticatedListener, OnDialogChatterListener, OnAnimationCompleteListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_launcher);
final ActionBar ab = getSupportActionBar();
ab.setDisplayOptions(ActionBar.DISPLAY_SHOW_CUSTOM);
ab.setCustomView(R.layout.title_bar);
ab.setStackedBackgroundDrawable(getResources().getDrawable(R.drawable.titlebarbackground));
TextView txt = (TextView) findViewById(R.id.myTitle1);
Typeface font = Typeface.createFromAsset(getAssets(), "caviar_dreams_bold.ttf");
txt.setTypeface(font);
TextView txt2 = (TextView) findViewById(R.id.myTitle2);
Typeface font2 = Typeface.createFromAsset(getAssets(), "caviardreams.ttf");
txt2.setTypeface(font2);
}
@Override
public boolean onCreateOptionsMenu(com.actionbarsherlock.view.Menu menu) {
getSupportMenuInflater().inflate(R.menu.commonmenus, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case android.R.id.home:
return false;
case R.id.search_for_product:
performProductReview(findViewById(android.R.id.content));
return true;
case R.id.search_for_business:
performCompanyReview(findViewById(android.R.id.content));
return true;
case R.id.search_for_service:
performServiceReview(findViewById(android.R.id.content));
return true;
case R.id.search_for_person:
performPersonReview(findViewById(android.R.id.content));
return true;
default:
return super.onOptionsItemSelected(item);
}
}
而且commonmenus.xml
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android" >
<item
android:id="@+id/menu_settings"
android:orderInCategory="100"
android:showAsAction="never"
android:title="@string/menu_settings"/>
<item android:id="@+id/search_for_product" android:showAsAction="never" android:orderInCategory="10" android:title="@string/menu_search_for_product"></item>
<item android:id="@+id/search_for_business" android:showAsAction="never" android:orderInCategory="11" android:title="@string/menu_search_for_business"></item>
<item android:id="@+id/search_for_service" android:showAsAction="never" android:orderInCategory="12" android:title="@string/menu_review_service"></item>
<item android:id="@+id/search_for_person" android:showAsAction="never" android:orderInCategory="14" android:title="@string/menu_review_person"></item>
<item android:id="@+id/view_my_reviews" android:showAsAction="never" android:orderInCategory="15" android:title="@string/menu_view_my_reviews"></item>
</menu>
我使用的是大偵探動作條使用一些自定義的字體的自定義標題和正在仿真器和手機,但菜單隻顯示在模擬器上。我嘗試過將自定義字體代碼註釋掉,並沒有什麼區別。
我好清楚:3個菜單點甚至不露面。
花了幾個小時搜索和尋找線索後,我在一個損失。任何洞察力將不勝感激。
3點(溢出菜單)不應該顯示出來,因爲S3具有一個專用的菜單按鈕。 –
新手機...不知道這麼說謝謝。有沒有辦法讓它顯示出來?我在其他應用程序上看到它。 – CMDPrompt
ActionBarSherlock * did *有幾個版本的力溢出主題。不過,我建議保持原樣;只有在沒有專用菜單鍵的設備上才能看到溢出菜單。 –