2013-05-05 5 views
1

다음과 같이 Android 라이브 벽지 앱을 선호합니다. (이들은 체크 박스입니다). Facebook 페이지 링크를이 목록에 추가하고 싶습니다. 인터넷에서 Android PreferenceCategory를 보면 "LinkPreference"또는 "ButtonPreference"와 같은 내용은 표시되지 않지만 다시 링크 또는 버튼은 기본 설정이 아니므로 사각형 페그에 맞추려고합니다. 둥근 구멍. 이것이 가능한가요, 그렇다면 어떻게? Android Add Link to a preference activity - how? 하지만 대답 : 환경 설정에 링크를 추가 하시겠습니까?

<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" > 
android:title="@string/livewallpaper_settings"> 
    <PreferenceCategory android:title="@string/livewallpaper_settings" > 
     <CheckBoxPreference 
      android:defaultValue="true" 
      android:key="showred" 
      android:summary="Display red." 
      android:title="Display red" /> 
     <CheckBoxPreference 
      android:defaultValue="true" 
      android:key="showgreen" 
      android:summary="Display green." 
      android:title="Display green" /> 
    </PreferenceCategory> 
</PreferenceScreen> 

이 질문에

전에 요청 받았다.

[편집] 이제 아래 코드가 있습니다. 그것은 Facebook으로 이동하지만, 체크 박스 환경 설정 중 하나를 먼저 클릭해야만합니다.

<PreferenceCategory android:title="@string/livewallpaper_settings" > 
<Preference 
    android:key="facebook" 
    android:summary="@string/facebook" 
    android:title="@string/facebook" /> 
</PreferenceCategory> 

LiveWallpaperSettings.java :
공공 무효가 onSharedPreferenceChanged (된 SharedPreferences의 된 SharedPreferences, 문자열 키) { Log.d ("LiveWallpaperSettings.onSharedPreferenceChanged()", "키 livewallpaper_settings.xml에서

: "+ 키); 최종 환경 설정 mypref = (환경 설정) findPreference ("facebook"); mypref.setOnPreferenceClickListener (새 OnPreferenceClickListener() {

@Override 
    public boolean onPreferenceClick(Preference arg0) { 
    Log.d("LiveWallpaperSettings", "mypref: " + mypref.getKey()); 
    if (mypref.getKey().equals("facebook")) { 
    Log.d("LiveWallpaperSettings", "LINK TO FACEBOOK"); 
    openWebURL("http://www.facebook.com"); 
    return false; 
    } 
    return false; 
} }); 
return; 
} 

public void openWebURL(String inURL) { 
    Log.d("openWebURL", inURL); 
    Intent browse = new Intent(Intent.ACTION_VIEW , Uri.parse(inURL)); 

    startActivity(browse); 
} 
+0

하지만 답장을 보내 주셨을뿐입니다. – Snailer

+0

오, 죄송합니다. 나는이 링크를 간과했습니다. 고마워요. 고마워요. –

답변

2

EditTextPreference에 대해? 당신은 정말 당신이 한 줄에 입력을 제한에 대한 올바른 IME를 표시 할 수 EditTextPreferenceEditText과 같은 속성을 사용할 수있는 방법 이메일 입력 등.

관련 문제