从preferenceScreen Android打开WebView而不是浏览器

时间:2011-06-16 16:49:05

标签: android preferenceactivity

从我的PreferenceScreen我想在WebView中打开链接而不是浏览器。有什么想法吗?

以下是我的xml的一部分:

 <PreferenceCategory
      android:title="@string/about">
     <PreferenceScreen
            android:title="@string/eula"
            android:summary="">
        <intent android:action="android.intent.action.VIEW"
                android:data="http://www.tara.com/m/EULA.aspx" />
    </PreferenceScreen>

    <PreferenceScreen
            android:title="@string/privacy_policy"
            android:summary="">
        <intent android:action="android.intent.action.VIEW"
                android:data="http://www.tara.com/m/Legal/Privacy.aspx" />
    </PreferenceScreen>
    <PreferenceScreen
            android:title="@string/version"
            android:summary="@string/version_name">
    </PreferenceScreen>

    <PreferenceScreen
            android:title="@string/customer_support"
            android:summary="@string/email_description">
            <intent android:action="com.tara.android.turboweather.EMAIL_ACCUWX"
             />
    </PreferenceScreen>
    <PreferenceScreen
            android:title="@string/branding"
            android:summary="">
    </PreferenceScreen>        
</PreferenceCategory>

因此,我希望打开Android WebView,而不是打开手机的浏览器。

1 个答案:

答案 0 :(得分:8)

您应该在首选项上使用点击监听器,点击它时,打开您的活动。

在XMl中,用Preference替换PreferenceScreen并给它一个键

<Preference android:title="About"
            android:summary="Details about the app"
            android:key="aboutPref" />

然后在您的首选项活动中,加载首选项文件后:

Preference pref = findPreference( "aboutPref" );
pref.setOnPreferenceClickListener( myListener );

其中myListener是一个内部类的实例,它将启动您的活动并传递url以打开intent for extra数据。

此致  斯特凡