gpt4 book ai didi

android - Activity 未在 android 中打开

转载 作者:行者123 更新时间:2023-11-30 03:22:44 24 4
gpt4 key购买 nike

我刚刚开始进行 Android 应用程序开发所以我在 eclipse 中制作了一个应用程序,以 android 10 为基础( Gingerbread )然后我编辑了我的主要 Activity (main.java) 以显示一个带有两个选项的菜单 A)settings B)about然后我在/res/xml/settings.xml 中创建了一个资源,然后制作了使用 addPreferencesFromResource() 方法的 Prefs.java..

但是当我点击设置时,我没有看到任何东西..我还在我的应用程序的 Android list 中定义了 Activity 。

这是我的代码://prefs.java

package com.mhrsolanki2020.thecaller;

import android.preference.PreferenceActivity;
import android.os.Bundle;

public class Prefs extends PreferenceActivity {

protected void onCreate(Bundle savedInstance)
{
super.onCreate(savedInstance);
addPreferencesFromResource(R.xml.settings);

}

}

//主程序.java

package com.mhrsolanki2020.thecaller;

import android.os.Bundle;
import android.app.Activity;
import android.content.Intent;
import android.view.Menu;
import android.view.MenuItem;


import android.view.MenuInflater;

public class Main extends Activity {

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

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
super.onCreateOptionsMenu(menu);
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.main, menu);
return true;
}

public boolean onOptionsItemSecelted(MenuItem item){
switch(item.getItemId()){
case R.id.action_settings:
startActivity(new Intent(this,Prefs.class));
return true;
}
return false;
}

}

//安卓 list

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.mhrsolanki2020.thecaller"
android:versionCode="1"
android:versionName="1.0" >

<uses-sdk
android:minSdkVersion="9"
android:targetSdkVersion="10" />

<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name="com.mhrsolanki2020.thecaller.Main"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />

<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity android:name="com.mhrsolanki2020.thecaller.Prefs"
android:label="@string/prefs_label"> </activity> </application>

</manifest>

///res/xml/settings.xml

<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen
xmlns:android="http://schemas.android.com/apk/res/android">
<CheckBoxPreference
android:defaultValue="true"
android:title="@string/activation"
android:summary="@string/activatoinSummary"/>
</PreferenceScreen>

///menu/main.xml

<menu xmlns:android="http://schemas.android.com/apk/res/android" >

<item
android:id="@+id/action_settings"
android:orderInCategory="100"
android:title="@string/action_settings"/>
<item
android:id="@+id/action_about"
android:orderInCategory="101"
android:title="@string/action_about"/>


</menu>

最佳答案

你有一个错字:

 public boolean onOptionsItemSecelted(MenuItem item){  // <-- typo onOptionsItemSelected
switch(item.getItemId()){
case R.id.action_settings:
startActivity(new Intent(this,Prefs.class));
return true;
}
return false;
}

关于android - Activity 未在 android 中打开,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18811984/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com