繁体   English   中英

Android:设置自定义标题/操作栏-不起作用

[英]Android: Setting Custom Title/Action Bar - not working

我正在尝试如下设置自定义标题栏(请注意,此活动从FragmentActivity扩展,如果很重要):

...
import android.support.v4.app.FragmentActivity;
...
public class MyActivity extends FragmentActivity {
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        android.app.ActionBar actionBar = this.getActionBar();
        LayoutInflater inflator = (LayoutInflater) this
            .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        View v = inflator.inflate(R.layout.window_title, null);    
        TextView tv = (TextView) v.findViewById(R.id.titlex);    
        tv.setText("My Title");

        actionBar.setCustomView(v);                

        setContentView(R.layout.myactivity);
    }
    ...
}

但是我根本看不到“自定义标题栏”,缺少什么?

设置actionbar.setDisplayShowCustomEnabled(true); actionBar.setCustomView(v);之前actionBar.setCustomView(v);

编辑

在这里,我过去了自定义ActionBar创建的代码

// Action Bar Customization
    ActionBar ab =act.getActionBar();

    ColorDrawable colorDrawable = new ColorDrawable(act.getResources().getColor(color.ActionBar_bg));
    ab.setBackgroundDrawable(colorDrawable);


    ab.setDisplayShowTitleEnabled(false); // disables default title on
                                            // actionbar.
    ab.setDisplayShowCustomEnabled(true); // enables custom view.
    ab.setDisplayShowHomeEnabled(false); // hides app icon.
    ab.setTitle("");
    // Inflating Layout
    LayoutInflater inflater = (LayoutInflater) act.getActionBar()
            .getThemedContext().getSystemService(LAYOUT_INFLATER_SERVICE);

    View customActionBar = inflater.inflate(R.layout.actionbar_layout, null);
    txtUserName=(TextView)customActionBar.findViewById(R.id.txtUserName);

    ab.setCustomView(customActionBar);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM