您的位置:首页 > Web前端 > JavaScript

JS (Javascript)取当前日期、时间的代码及javascript日期比较

2010-05-18 11:50 821 查看
刚刚学习了android中preferenceActivity的使用,下面贴出自己的程序代码片段,希望对大家有用。呵呵,也是刚刚开始研究每多久,希望能和大家多多交流。

android通过配置文件自动生成PreferenceActivity界面

在res文件夹下创建xml/setting_preferences.xml文件,然后创建类继承PreferenceActivity就可以了

<?xml version="1.0" encoding="utf-8"?>

<PreferenceScreen

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

<PreferenceCategory android:title="@string/inner_picture">

<ListPreference android:key="listpreference_picsize"

android:title="@string/inner_picture"

android:summary="@string/inner_picture_summary"

android:entries="@array/pic_size_list"

android:entryValues="@array/pic_sizevalue_list"

android:dialogTitle="@string/dialog_title"/>

</PreferenceCategory>

<PreferenceCategory android:title="@string/channel_change">

<PreferenceScreen android:title="@string/select_change"

android:summary="热门频道为:即时新闻  要闻  国际"

android:key="change_channel">

</PreferenceScreen>

</PreferenceCategory>

<PreferenceCategory android:title="@string/font_size">

<ListPreference android:key="listpreference_fontsize"

android:title="@string/font_size"

android:summary="@string/font_size_summary"

android:entries="@array/font_size_list"

android:entryValues="@array/font_sizevalue_list"

android:dialogTitle="@string/dialog_title"/>

</PreferenceCategory>

<PreferenceCategory android:title="@string/user_message" >

<PreferenceScreen android:title="錄入用戶個人資料">

<EditTextPreference android:key="edittext_preference_name"

android:summary="請輸入您的姓名"

android:dialogTitle="@string/dialog_input_title"></EditTextPreference>

<EditTextPreference android:key="edittext_preference_email"

android:summary="請輸入您的郵件地址"

android:dialogTitle="@string/dialog_input_title"></EditTextPreference>

<EditTextPreference android:key="edittext_preference_phone"

android:summary="請輸入您的電話號碼"

android:dialogTitle="@string/dialog_input_title"></EditTextPreference>

</PreferenceScreen>

</PreferenceCategory>

</PreferenceScreen>

 

类的实现

public class SettingPreferenceActivity extends PreferenceActivity implements OnSharedPreferenceChangeListener {

 

private static final String KEY_FOR_CHANNEL_CHANGE_PREFERENCE="change_channel";

@Override

public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen,

Preference preference) {

if(preference.getKey()!=null&&preference.getKey().equals(KEY_FOR_CHANNEL_CHANGE_PREFERENCE)){

Intent intent = new Intent(this,ChannelSelectActivity.class);

startActivity(intent);//点击PreferenceScreen 跳转至其它Activity

}

return super.onPreferenceTreeClick(preferenceScreen, preference);

}

 

@Override

protected void onCreate(Bundle savedInstanceState) {

// TODO Auto-generated method stub

super.onCreate(savedInstanceState);

        addPreferencesFromResource(R.xml.seting_preferences);

 

// requestWindowFeature(Window.FEATURE_NO_TITLE);

 

}

}

preference有不同的格式,如EditTextPreference、ListPreference、CheckBoxPreference等类型

当选择或是输入不同的值时,他们的值会自动保存到sharedpreferences中,当值发生改变的时候会触发

public void onSharedPreferenceChanged(SharedPreferences sharedPreferences,

String key) {

}

 

可以通过各个preference的key来得到对象,从而得到所选中的值

ListPreference  listPreferencePicsizes=(ListPreference)findPreference("listpreference_picsize");//內嵌圖片大小設置

 listPreferencePicsizes.setSummary("当前图片大小为:"+getText(listPreferencePicsizes));

 

String getText(Preference p)

{

String value;

try

{

if (p instanceof ListPreference)

{

value = ((ListPreference) p).getValue();

CharSequence[] entries =  ((ListPreference) p).getEntries();

CharSequence[] entryValues =  ((ListPreference) p).getEntryValues();

for (int i = 0;i<entryValues.length;i++)

{

if  (value.equals( (String)entryValues[i]))

return (String)entries[i];

}

}

else if (p instanceof EditTextPreference)

{

return ((EditTextPreference) p).getText();

}

}

catch(Exception e)

{

return "";

}

return "";

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: