Android自定义标题栏-居中文本
我用自己的布局创建了自定义标题栏。我希望标题栏中的文本与水平中心对齐(=与默认标题栏相同)。但这对我来说不起作用,我的文本仍然被贴在fitlebar的顶部,而不是中间。你能给我一些建议吗 我正在使用以下代码:Android自定义标题栏-居中文本,android,customization,titlebar,Android,Customization,Titlebar,我用自己的布局创建了自定义标题栏。我希望标题栏中的文本与水平中心对齐(=与默认标题栏相同)。但这对我来说不起作用,我的文本仍然被贴在fitlebar的顶部,而不是中间。你能给我一些建议吗 我正在使用以下代码: <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fil
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="@drawable/top_back">
<TextView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:id="@+id/title"
android:layout_gravity="center_vertical"
android:paddingLeft="15dip"
/>
</LinearLayout>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="@drawable/top_back">
<TextView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:id="@+id/title"
android:layout_alignParentTop = "true"
android:layout_centerHorizontal = "true"
/>
</RelativeLayout>
这将起作用:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal"
android:background="@drawable/top_back">
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/title"
android:gravity="center_vertical"
android:paddingLeft="15dip"
/>
通过更改,android:layout\u width
和android:gravity
这将起作用:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="horizontal"
android:background="@drawable/top_back">
<TextView
android:layout_width="match_parent"
android:layout_height="match_parent"
android:id="@+id/title"
android:gravity="center_vertical"
android:paddingLeft="15dip"
/>
通过更改,
android:layout\u width
和android:gravity
简单了解重力和布局重力:
android:gravity=>设置其上使用的视图内容的重力
android:layout_gravity=>设置父视图或布局的重力
更多信息:
现在,您需要在
中包含android:gravity=“center\u horizontal”
,以便简单了解重力和布局重力:
android:gravity=>设置其上使用的视图内容的重力
android:layout_gravity=>设置父视图或布局的重力
更多信息:
现在,您需要在您的
中包含android:gravity=“center\u horizontal”
将android:layout\u height=“match\u parent”设置为“包装内容”。它会起作用的
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/title"
android:text="center"
android:layout_gravity="center"></TextView>
将android:layout\u height=“match\u parent”更改为“包装内容”。它会起作用的
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/title"
android:text="center"
android:layout_gravity="center"></TextView>
您可以使用RelativeLayout而不是LinearLayout。RelativeLayout可以更好地处理视图的属性 使用此代码:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="@drawable/top_back">
<TextView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:id="@+id/title"
android:layout_gravity="center_vertical"
android:paddingLeft="15dip"
/>
</LinearLayout>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="@drawable/top_back">
<TextView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:id="@+id/title"
android:layout_alignParentTop = "true"
android:layout_centerHorizontal = "true"
/>
</RelativeLayout>
第一行在视图顶部设置文本视图,第二行在顶部设置水平中心。您可以使用RelativeLayout而不是LinearLayout。RelativeLayout可以更好地处理视图的属性 使用此代码:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="@drawable/top_back">
<TextView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:id="@+id/title"
android:layout_gravity="center_vertical"
android:paddingLeft="15dip"
/>
</LinearLayout>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
android:background="@drawable/top_back">
<TextView
android:layout_width="wrap_content"
android:layout_height="match_parent"
android:id="@+id/title"
android:layout_alignParentTop = "true"
android:layout_centerHorizontal = "true"
/>
</RelativeLayout>
第一行在视图顶部设置文本视图,第二行在顶部设置水平中心。Changeandroid:layout\u gravity=“center\u horizontal” 请看一下代码,需要以完全相同的方式使其位于中心
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.playing_video); // Actual Layout Name
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE,
R.layout.custom_layout); // Layoutname of Title Text
TextView titleText= (TextView) findViewById(R.id.title);
titleText.setText("Your Text");
}
它对我有效,如果对你有效,请告诉我。更改android:layout\u gravity=“center\u horizontal” 请看一下代码,需要以完全相同的方式使其位于中心
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
setContentView(R.layout.playing_video); // Actual Layout Name
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE,
R.layout.custom_layout); // Layoutname of Title Text
TextView titleText= (TextView) findViewById(R.id.title);
titleText.setText("Your Text");
}
它对我有效,如果对您有效,请告诉我。您是否尝试过为textview设置layout_gravity=“center”?另一种方法是设置其布局\u width=“fill\u parent”和gravity=“center”,然后尝试android:gravity=“center\u vertical”您尝试过为textview设置布局吗?另一种方法是设置其布局\u width=“fill\u parent”和gravity=“center”,然后尝试android:gravity=“center\u vertical”