[转载]关于自定义标题-Android开发进阶&经验分享-eoe Android开发者社区_Android开发论坛

[转载]关于自定义标题-Android开发进阶&经验分享-eoe Android开发者社区_Android开发论坛.

一般情况下,自定义标题时,按以下写法即可

代码片段,双击复制
01
02
03
requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); //声明使用自定义标题
setContentView(R.layout.list);
getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.title);//自定义布局赋值

但是如果遇到特殊的Activity,如ListActivity,不需要setContentView,此时,如果直接把setContentView去掉,那么自定义的标题就会也不显示了。


如果依然调用setContentView,传入一个空的布局文件,我得到了一个报错信息:

布局中必须要有个id为@Android:id/list的listview的listview
于是在空布局中加入个空listview,id为@Android:id/list的listview

代码片段,双击复制
01
02
03
04
05
06
07
08
09
10
<?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="vertical" >
    <ListView android:id="@android:id/list"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"></ListView>
 
</LinearLayout>


然后再调用setcontentview(R.layout.empty_list);

代码片段,双击复制
01
02
03
04
05
06
07
08
09
10
11
        requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); //声明使用自定义标题
                setContentView(R.layout.list);
                getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.title);//自定义布局赋值
 
                ArrayList<Map<String,String>> a = new ArrayList<Map<String,String>>();
                Map<String,String> b = new HashMap<String,String>();
                b.put("aaa", "aaa");
                a.add(b);
 
                setListAdapter(new SimpleAdapter(this,a, R.layout.title,
                                new String[]{"aaa"}, new int[]{R.id.textView1}));


这样就ok了

赞(0) 打赏
分享到: 更多 (0)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏