我无法设置标题栏的背景图像,我只能设置颜色,请告诉我我在以下代码中必须更改的内容.
我想要一个与图像1完全相同的副本,我得到的输出如图2所示.
<ImageVIEw androID:ID="@+ID/header" androID:background="@drawable/ic_launcher" androID:layout_wIDth="wrap_content" androID:layout_height="wrap_content"/> <TextVIEw androID:layout_wIDth="wrap_content" androID:layout_height="wrap_content" androID:text="ShowRoom" androID:textcolor="@androID:color/black" androID:textStyle="bold"/> <ImageVIEw androID:ID="@+ID/header1" androID:drawableRight="@drawable/menu" androID:layout_wIDth="wrap_content" androID:layout_height="wrap_content"/> <button androID:ID="@+ID/button1" androID:layout_wIDth="wrap_content" androID:layout_height="wrap_content" androID:text="button" /></linearLayout>
和我的活动java文件
public class ItemActivity extends Activity { @OverrIDe protected voID onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestwindowFeature(Window.FEATURE_CUSTOM_Title); setContentVIEw(R.layout.itemList); getwindow().setFeatureInt(Window.FEATURE_CUSTOM_Title,R.layout.item); }}
和styles.xml
<style name="Titlebartheme" parent="androID:theme"> <item name="androID:windowTitleSize">35dip</item> <item name="androID:windowTitleBackgroundStyle">@style/CustomWindowTitlebarBG</item> </style>
解决方法:
至于文字对齐,应该这样做
<TextVIEw androID:ID="@+ID/left_text" androID:layout_wIDth="match_parent" androID:layout_height="wrap_content" androID:gravity="center" androID:layout_centerHorizontal="true" androID:text="ShowRoom" />
至于Actionbar,首先将xml自定义布局添加到布局文件夹中,如下所示:
custom_actionbar_layout
<?xml version="1.0" enCoding="utf-8"?><linearLayout xmlns:androID="http://schemas.androID.com/apk/res/androID"androID:layout_wIDth="match_parent"androID:layout_height="match_parent"androID:orIEntation="horizontal" ><TextVIEw androID:ID="@+ID/action_bar_Title" androID:layout_wIDth="match_parent" androID:layout_height="match_parent" androID:textcolor="#ffffff" androID:gravity="center" androID:text="@string/app_name" androID:textAppearance="?androID:textAppearanceLarge" androID:ellipsize="end" androID:padding="5dp" androID:maxlines="1" /></linearLayout>
在您的活动中:
protected voID onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentVIEw(R.Layout.xyz); initUI();}private voID initUI(){ Actionbar mActionbar = getSupportActionbar(); mActionbar.setdisplayShowHomeEnabled(false); mActionbar.setIcon(R.drawable.ic_launcher); mActionbar.setdisplayShowCustomEnabled(true); mActionbar.setCustomVIEw(R.layout.custom_actionbar_layout);}
至于在Actionbar右侧的菜单图标,称为MenuItem,请尝试使用“ onCreateOptionsMenu”对Menu进行充气,然后将xml中的showAsAction设置为所需的内容,例如,将XML添加到res / menu文件夹中,如下所示:
<menu xmlns:androID="http://schemas.androID.com/apk/res/androID" ><item androID:ID="@+ID/ContctUs" androID:orderIncategory="100" androID:showAsAction="collapseActionVIEw|withText" androID:title="@string/ContactUs" androID:icon="@drawable/ic_action_info"/><item androID:ID="@+ID/skin1" androID:orderIncategory="101" androID:showAsAction="collapseActionVIEw|withText" androID:title="@string/skin1" androID:visible="false" androID:icon="@androID:drawable/ic_menu_vIEw"/>
在您的活动中:
@OverrIDepublic boolean onCreateOptionsMenu(com.actionbarsherlock.vIEw.Menu menu) { new MenuInflater(this).inflate(R.menu.main, menu); return super.onCreateOptionsMenu(menu);}@OverrIDe public boolean onoptionsItemSelected(MenuItem item) { if (item.getItemID() == R.ID.ContctUs) { startActivity(new Intent(this,ContactUs.class)); return(true); }else if(...){...} return super.onoptionsItemSelected(item); }
希望这行得通.
注意:
此方法用于Pre-L设计,如果要定位androID-L,请考虑使用工具栏.(support.v7.Widget.Toolbar)
以上是内存溢出为你收集整理的android-右上角菜单选项全部内容,希望文章能够帮你解决android-右上角菜单选项所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)