मैं एन-लेयर प्राथमिकताएं लागू कर रहा हूं पहली परत प्राथमिकता प्राथमिकता-हेडर से लोड की गई है।वरीयता-हेडर से प्रारंभ गतिविधि
पहला हेडर सेटिंग्स का खंड बनाता है जो एक प्राथमिकता है। दूसरा ब्राउज़र गतिविधि है (दूसरा डेवलपर.android.com से एक उदाहरण है) जो निर्दिष्ट यूआरएल खोलता है। तीसरा मैं वरीयता एटिविटी का अगला स्तर बनना चाहता हूं जिसे वरीयता-हेडर से भी लोड किया जाएगा।
पहले दो काम ठीक है, लेकिन 3 अपवाद के साथ कोई ऐप्स क्रैश हो:
"android.content.ActivityNotFoundException कोई गतिविधि नहीं आशय {अधिनियम = android.intent.action.VIEW Dat = com.mycompany को संभालने के लिए मिला .myapp.ui.MyPreferenceActivity} "
MyPreferenceActivity प्रकट फ़ाइल में घोषित किया गया। शायद main_headers.xml में गतिविधि की घोषणा गलत है, लेकिन मुझे संदर्भ में कोई सुझाव नहीं मिला कि यह सही कैसे करें। कई बदलावों का प्रयास किया, वे काम नहीं किया।
उदाहरण मैं प्रयोग किया है: http://developer.android.com/reference/android/preference/PreferenceActivity.html
किसी भी विचार क्यों यह मेरे लिए काम नहीं करता है या कैसे अगले PreferenceActivity कहा जा सकता है? असल में मुझे केवल हेडर से एक गतिविधि शुरू करने की आवश्यकता है, जो वास्तव में सरल होना चाहिए लेकिन मुझे कुछ याद आ रहा है।
public class MySettings extends PreferenceActivity
{
@Override
public void onBuildHeaders(List<Header> target)
{
loadHeadersFromResource(R.xml.main_headers, target);
}
}
main_headers.xml:
<?xml version="1.0" encoding="utf-8"?>
<preference-headers
xmlns:android="http://schemas.android.com/apk/res/android" >
<header android:title="Custom Settings"
android:fragment="com.mycompany.myapp.ui.SettingsFragment" />
<header android:title="Intent"
android:summary="Launches an Intent.">
<intent android:action="android.intent.action.VIEW"
android:data="http://www.android.com" />
</header>
<header android:title="Another Preference Activity">
<intent android:action="android.intent.action.VIEW"
android:data="com.mycompany.myapp.ui.MyPreferenceActivity" />
</header>
</preference-headers>
मुझे लगता है कि यह एक पुराने सवाल यह है कि जोड़ें। क्या आपको डिफ़ॉल्ट एंड्रॉइड पैकेज के लिए एक इरादा निर्दिष्ट करने का तरीका पता है? जैसे 'Settings.ACTION_ADD_ACCOUNT'? – Jin
मेरे साथ काम किया, धन्यवाद –