2012-07-07 61 views
0

我的Android項目有一些問題!我創建了一個首選項意圖,它在模擬器中正常工作。但是當我通過移動設備的菜單鍵傳輸項目並啓動首選項時,它會停止工作並關閉!我想知道這是怎麼回事!項目apk在現實世界的設備上崩潰

我的設備是:的Xperia迷你臨 - >運行的Android ICS 4.0.4

代碼,

優先級:

package com.sliit.droidman.main; 

import com.sliit.droidman.R; 

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

public class Prefs extends PreferenceActivity{ 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    // TODO Auto-generated method stub 
    super.onCreate(savedInstanceState); 
    addPreferencesFromResource(R.xml.prefs); 
} 
} 

偏好XML文件:

<?xml version="1.0" encoding="utf-8"?> 
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" > 
<EditTextPreference 
    android:title="Edit text" 
    android:key="name" 
    android:summary="enter your name" 
></EditTextPreference> 
<CheckBoxPreference 
    android:title="Music" 
    android:defaultValue="true" 
    android:key="checkbox" 
    android:summary="check this box" 
></CheckBoxPreference> 
<ListPreference 
    android:title="list" 
    android:key="list" 
    android:summary="this is a list to choose from" 
    android:entries="@array/list" 
    android:entryValues="@array/lValues" 
></ListPreference> 
</PreferenceScreen> 

偏好被調用的地方:

SharedPreferences getprefs = PreferenceManager.getDefaultSharedPreferences(getBaseContext()); 
    boolean music = getprefs.getBoolean("checkbox", true); 
    if (music == true) { 
     splashmp3.start(); 
    } 

我在做什麼錯在這裏!我沒有模擬器的任何問題!但該設備存在問題!由於我以前使用相同的方式開發了一個應用程序,因此我將它運行在設備中,並且在首選項上運行良好。但這支部隊關閉。我必須給予任何權限! O.o

回答

0

我發現了什麼是錯誤。這是一個錯誤,我在一個開關盒中創建了首選項意圖。 :)我輸入錯誤的類名稱。所以我糾正了它,現在它像魔術一樣起作用!

switch (item.getItemId()) { 
    case R.id.about: 
     startActivity(new Intent(this, About.class)); 
     break; 
    case R.id.prefs: 
     Intent prefs = new Intent("com.cdap.droidman.PREFS"); 
     startActivity(prefs); 
     break; 
    case R.id.exit: 
     finish(); 
     break; 
    } 
+0

它應該是 '意圖首選項=新意圖(此,prefs.class);' – 2012-07-07 19:13:18