2

我正在使用不同的布局在我的应用程序中显示不同样式的标题。问题是我无法获得对它们中存在的特定 Textview 的引用。如果我更改文本,则不会发生任何事情。

这是我正在做的事情:

getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.title_bar);

以下方法不起作用:

public void setTitle(String text) {
    TextView txtTitle = (TextView) this.findViewById(R.id.txtTitle);
    if(txtTitle !=null) {
        txtTitleMoney.setText(text);
        Log.d("debug", "not null");
    } 
}

我没有收到任何错误,所以我认为我访问了错误的视图。

希望有人可以帮助我:)

4

2 回答 2

5

试试这个

boolean customTitleSupported;

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    customTitleSupported = requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);     
    setContentView(R.layout.mainscreen);

    customTitleBar();
}

public void customTitleBar( ) {

    if (customTitleSupported) {
            getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE,
                            R.layout.customtitlebar);
            TextView title = (TextView) findViewById R.id.title);               
            title.setText(left);             
    }
}
于 2012-11-22T14:59:59.773 回答
5

如果您为所有不同标题布局中txtTitle的项目设置相同的 id (" ") ,那么您的代码应该可以工作。TextView还要确保你打电话setTitle()setContentView()

于 2012-11-27T22:37:07.780 回答