您的位置:首页 > 其它

八月工作总结

2011-09-11 12:41 162 查看
贴上。



1, android的入门开发,基本笔记就在另一处,不在这重复了。

2, 重新又看了java基本语法,都有一年没接触面向对象编程了。

3,

MTK项目中。

移植blog central主要涉及UI方面的修改,因为目标平台的UI架构与源平台的架构不一样。

动态列表界面实现,增删改blog central account的实现,option菜单的资源问题的解决。

4,

使用开关控制代码,这种跟C中宏开关控制的目的一致:

Config.xml (droid\frameworks\base\core\res\res\values)是制定全局的开关控制文件,也能说是默认开关控制。

Config.xml (droid\vendor\cellon\vendor_overlay\【项目名】\frameworks\base\core\res\res\values)是对应项目的开关控制文件。

1)找到在config.xml中定义的字段。

<!-- Make the phone silent when you choose silent for ringtone -->

<bool name="silent_is_choosed_ringtone">false</bool>

定义了字段的名字以及标示开闭与否的boolean值。

2)代码中,

boolean silentIsChoosed = context.getResources().getBoolean(

com.android.internal.R.bool.silent_is_choosed_ringtone);

context是个Context的structure,该值一般通过getContext()获取。

以上即可取得silent_is_choosed_ringtone的值。然后再代码中通过if判断确定该开关控制下的代码执行。

5,

可以将界面上的widget绑定到对应的preference,然后在widget上面的数据有更新时自动更新preference文件。

诸如以下界面



1) 设定xml文件

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

android:title="@string/set_alarm">

<CheckBoxPreference android:key="enabled"

android:persistent="false"

android:title="@string/enable_alarm" />

<Preference android:key="time"

android:persistent="false"

android:title="@string/time"/>

<com.android.deskclock.RepeatPreference

android:persistent="false"

android:key="setRepeat"

android:title="@string/alarm_repeat" />

<com.android.deskclock.AlarmPreference

android:key="alarm"

android:title="@string/alert"

android:ringtoneType="alarm"

android:persistent="false"

android:showDefault="false"

android:showSilent="true" />

<CheckBoxPreference android:key="vibrate"

android:persistent="false"

android:title="@string/alarm_vibrate"/>

<EditTextPreference android:key="label"

android:persistent="false"

android:title="@string/label"

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

</PreferenceScreen>



2) 通过addPreferencesFromResource(R.xml.alarm_prefs);取得对应界面的preference。

3) 对于不同widget,创建不同widget对应的preference。

例如对于EditText这个widget,创建private EditTextPreference mLabel;

4)

通过findPreference获取 对应preference。

mLabel = (EditTextPreference) findPreference("label");

5)

重载实现OnPreferenceChangeListener函数。

mLabel.setOnPreferenceChangeListener(

new Preference.OnPreferenceChangeListener() {

public boolean onPreferenceChange(Preference p,

Object newValue) {

String val = (String) newValue;

// Set the summary based on the new label.

p.setSummary(val);

if (val != null && !val.equals(mLabel.getText())) {

// Call through to the generic listener.

return SetAlarm.this.onPreferenceChange(p,

newValue);

}

return true;

}

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