1 appWidgetManager.updateAppWidget(appWidgetIds, views);
2 Toast.show()
3 startActivity();
4 alertDialog.create(); alertDialog.show();
5 在appwidget中appWidgetManager.updateAppWidget(appWidgetIds, mRemoteViews);
6 editor.commit();
7 writer.flush();
8 在Android的列表中动态加载列表项需要对adapter里的源容器进行更新修改后再调用
9 adapter.notifyViewChanaged()方法刷新当前listView.
<ScrollView >
<LinearLayout>
<ListView>1</ListView>
<ListView>2</ListView>
<ListView>3</ListView>
</LinearLayout>
</ScrollView >
这里显示listView是有滚动条的,如何去掉滚动,关键在设置listView的height,这里就需要根据你的listView的内容动态设置了
listView lv;
ListAdapter la = lv.getAdapter();
int h = 0;
final int cnt = la.getCount();
for(int i=0; i<cnt; i++) {
View item = la.getView(i, null, lv);
item.measure(0, 0);
h += item.getMeasuredHeight();
}
// reset ListView height
ViewGroup.LayoutParams lp = lv.getLayoutParams();
lp.height = h + (lv.getDividerHeight() * (cnt - 1));
lv.setLayoutParams(lp);
使用一种模式意味着要把一组行为和变量封装进一组类中,可以轻易的扩充与改变。使用一整套模式,意味着使用了一整套的质特性、约束。
OO原则:封装变化,使变化的与不变的相分离;多用组合,少用继承;针对接口编程,不针对实现编程;
策略模式:定义算法族,分别封装起来,让他们之间可以相互替换——让算法的变化独立于使用变化的客户。
观察者模式:定义了对象之间的一对多的依赖关系,当主题对象改变时,它的所有依赖着都可以收到通知并自动更新。例如onClickListener()观察者方法。主题是真正拥有数据的人,观察者是主题的依赖者。
松耦合的优势:当两个个对象之间松耦合,它们依然可以交互,但是不太清楚彼此的细节。不需要考虑实现细节。松耦合把对象之间的依赖降到了最低。
想要成为观察者只需要实现观察者接口即可。主题不在乎别的,他只发送通知给所有实现了观察者对象接口的对象。