自定义标题栏
2010-12-03 10:25 RayLee 阅读(611) 评论(0) 编辑 收藏 举报应用程序默认的标题栏仅仅是文字显示,过于单调。Android允许自定义标题栏以显示更丰富的内容。下面是实现的步骤:
自定义标题栏布局
创建window_title.xml
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="horizontal" > <TextView android:id="@+id/title" android:layout_width="wrap_content" android:layout_height="fill_parent" android:layout_weight="1.0" android:text="This is custom title" style="?android:attr/windowTitleStyle" /> <ProgressBar android:id="@+id/progressBar" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_gravity="center" style="?android:attr/progressBarStyleSmallTitle" /> </LinearLayout>
值得注意的是,对TextView需要应用style="?android:attr/windowTitleStyle",否则就是普通的字体显示,而不是放大的高亮的标题栏字体显示。
应用自定义布局
创建好自定义布局后,在Activity初始化时应用该布局
public class MainActivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); setContentView(R.layout.main); getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.window_title); } }
来看看最终的效果图吧