操作栏活动已关闭

时间:2015-06-22 09:08:30

标签: android android-actionbar

我的代码出了什么问题?当我在我的设备/模拟器上运行应用程序时,我的应用程序崩溃了#34;不幸!行动栏已停止"

public class Main extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.main);

    ActionBar mActionBar = getActionBar();
    assert mActionBar != null;
    mActionBar.setDisplayShowHomeEnabled(false);
    mActionBar.setDisplayShowTitleEnabled(false);

    LayoutInflater mInflater = LayoutInflater.from(this);

    View myCustonView = mInflater.inflate(R.layout.actionbar, null);
    TextView mTitleTextView = (TextView) myCustonView.findViewById(R.id.title_text);
    mTitleTextView.setText("Some Text Here");

    ImageButton mImageButton = (ImageButton)myCustonView.findViewById(R.id.imageButton);
    mImageButton.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            Toast.makeText(getApplicationContext(), "Refresh Clicked!" , Toast.LENGTH_LONG).show();

        }
    });

    mActionBar.setCustomView(myCustonView);
    mActionBar.setDisplayShowCustomEnabled(true);
}

}

注意:我在android studio工作,我从菜单文件夹中删除了munu.xml文件,并从Main类中删除了它的代码。

2 个答案:

答案 0 :(得分:3)

更改以下行

ActionBar mActionBar = getActionBar();

ActionBar mActionBar = getSupportActionBar();

希望这会对你有所帮助。

答案 1 :(得分:0)

Nag和Maisse已经为您提供了正确的答案,但如果这些答案无法解决,请试试这个。

检入style.xml以了解您为活动使用的主题。

<!-- Base application theme. -->
<style name="AppTheme" parent="android:Theme.AppCompat.Light.DarkActionBar">
    <!-- Customize your theme here. -->
</style>

<!-- Base application theme. -->
<style name="AppTheme" parent="android:Theme.Holo.Light.DarkActionBar">
    <!-- Customize your theme here. -->
</style>

希望这会对你有所帮助。