70.Android开发知识点总结

 
 
1.android之wifi开发
 

2.Android shape中的padding无效

3.自定义的上下拉刷新和SwipeListView+下拉
http://download.csdn.net/detail/sll110223/8389277
 
4.String source = "这只是一个测试,测试<u>下划线</u>、<i>斜体字</i>、<font color='red'>红色字</font>的格式";   
htmlFormateTextView.setText(Html.fromHtml(source));  
http://txlong-onz.iteye.com/blog/1142781

5.(Android4.1版本)以上无法启动支付宝的问题"java.security.spec.InvalidKeySpecException"

http://www.tuicool.com/articles/rYVZzq

 

 
 
6.// 判断是否滚动到底部
        boolean scrollEnd = false;
        try {
            if (view.getPositionForView(mAdapter.getFooterView()) == view
                    .getLastVisiblePosition())
                scrollEnd = true;
        } catch (Exception e) {
            scrollEnd = false;
        }
 
7.EditText 去除边框
android:background="@null"
 
8.linearlayout divider设置缩进 设置linearlayout paddingLeft就可以。
计算listview的item高度
int totalHeight = 0;
  for (int i = 0; i < mAdapter.getCount(); i++) {
   View listItem = mAdapter.getView(i, null, mListView);
   listItem.measure(0, 0);
   totalHeight += listItem.getMeasuredHeight();
  }
 
9.Exception raised during rendering: java.lang.System.arraycopy
错误原因:API等级 API 20:Android 4.4w,这是Android官网发布的可穿戴设备的API,它是不支持EditText组件的;
 
  1. paddingStart & paddingEnd 是根据左右对齐方式来起作用的
  2. 左对齐时, paddingStart 对应 paddingLeft, paddingEnd 对应 paddingRight
  3. 右对齐时, 正好相反 
 
10.EditText
 
 

11.Android中字体加粗

 
一、在xml文件中使用android:textStyle=”bold”
 
二、但是不能将中文设置成粗体,将中文设置成粗体的方法是: 

TextView tv = (TextView)findViewById(R.id.TextView01); 
TextPaint tp = tv.getPaint(); 
tp.setFakeBoldText(true);

设置edittext输入框的字体颜色
android:textColorHint="#f00"
 
 

12.Android 通过httpclient请求web服务器,并解决用户登录session保持

 
13.使用 MediaStore.Images.Media.getBitmap从Uri中获得bitmap以及其缺陷
 
 
15.仅wifi下下载:
1.点击下载的时候判断当前的手机网络状态。
2.注册网络变换广播,或者callback。只有在wifi下才允许下载。
 
16.清除缓存:
 
 
18.目录展示
 
19.listview套listview事件处理
 
20.用户反馈:
21.文字设置下划线
中间加横线 
tv.getPaint().setFlags(Paint. STRIKE_THRU_TEXT_FLAG ); 
底部加横线: 
tv .getPaint().setFlags(Paint. UNDERLINE_TEXT_FLAG );
 
 

22.fragment加载布局错误:

23.

24.android.os.NetworkOnMainThreadException

 
25.头像设置

26.拍照不清晰问题:

 
//这样得到的是缩略图
   System.out.println(data.getData() + "");
   if (data.hasExtra("data")) {
    Bitmap bitmap = data.getParcelableExtra("data");
    mUri = Uri.parse(MediaStore.Images.Media.insertImage(
      getContentResolver(), bitmap, null, null));
    crop(mUri);
   }
 
 

27.横竖屏切换生命周期:

 

1、不设置Activity的Android:configChanges时,切屏会重新调用各个生命周期,切横屏时会执行一次,切竖屏时会执行两次

2、设置Activity的android:configChanges="orientation"时,切屏还是会重新调用各个生命周期,切横、竖屏时只会执行一次

3、设置Activity的android:configChanges="orientation|keyboardHidden"时,切屏不会重新调用各个生命周期,只会执行onConfigurationChanged方法

button设置下划线

http://blog.csdn.net/lixiaodaoaaa/article/details/42737307
 
 

28.透明度值:

 
100% — FF
95% — F2
90% — E6
85% — D9
80% — CC
75% — BF
70% — B3
65% — A6
60% — 99
55% — 8C
50% — 80
45% — 73
40% — 66
35% — 59
30% — 4D
25% — 40
20% — 33
15% — 26
10% — 1A
5% — 0D
0% — 00

29.屏幕适配

30.ImageLoader

 
 
31. The application's PagerAdapter changed the adapter's contents without calling PagerAdapter#notifyDataSetChanged! 
 
 
32.最大bug 点击目录播放视频然后立即返回出错
 
 

33.Android实现不重复启动APP的方法

37.android.view.WindowLeaked 的解决方案

38.防止过快点击造成多次事件

http://www.2cto.com/kf/201503/383912.html
 
39.微信支付
在安装了应用的手机上运行微信获取签名的应用程序
问题找到了,是我们在微信平台注册应用的时候应用签名没有填写对,相当于是keystore没有通过验证,
42:有的手机默认不可以使用使用DownloadManager
 
43.DownloadManager的使用
 
44.Android点击Notification之后回到当前正在运行的Activity
 
45极光推送 富文本
 
46 app打开,安装新包,打开,按home键 再打开app
 
47.动态修改View的属性
 
48.webview js代码调用Java代码
 
 
49.

使用ScrollView或ListView或PullToRefreshListView时,在魅族flyme OS上或中兴手机上会出现上下回弹效果,影响用户体验。

想去除这个回弹效果,只需要在对应控件的xml里配置一个属性即可。

android:overScrollMode="never"
 
50 Android ListView 单条刷新方法实践及原理解析
 
 
 
51.滑动ViewPager引起swiperefreshlayout刷新的冲突
52.android全局异常处理
 

 
53: APP字体大小,不随系统的字体大小变化而变化的方法

数字1:启动Activity在这些类中是可以的,但是需要创建一个新的task。一般情况不推荐。

数字2:在这些类中去layout inflate是合法的,但是会使用系统默认的主题样式,如果你自定义了某些样式可能不会被使用。

数字3:在receiver为null时允许,在4.2或以上的版本中,用于获取黏性广播的当前值。(可以无视)

注:ContentProvider、BroadcastReceiver之所以在上述表格中,是因为在其内部方法中都有一个context用于使用。

55.ListView和RadioButton的结合
 
56.ListView和RadioButton结合
private int mCheckedPosition = -1;
mHolder.couponRBChecked.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(CompoundButton compoundButton, boolean b) {
//重置,确保最多只有一项被选中,并且因为setChecked方法会触发onCheckedChanged的调用,所以只有在b为true,即RadioButton被选中的情况下才更新列表
if(b) {
mCheckedPosition = position;
notifyDataSetChanged();
}
}
});
mHolder.couponRBChecked.setChecked(mCheckedPosition == position);
posted @ 2016-07-13 14:31  chaoer  阅读(677)  评论(0编辑  收藏  举报