Android5.0 与 4.x 差异化

之前开发的项目在4.X完美运行,可是用户升级到5.0以上就出现莫名的bug。以下是修改bug中总结的差异化!(持续更新)


总体感觉5.0以后对程序员的编码要求更高了,没有4.X系列那么随意了(*^__^*) 嘻嘻……


1,此处View 必须是LinearLayout或者RelativeLayout等ViewGroup。在4.X中可以是View,5.0以后View设置无效。

	/**
	 * 设置控件相对于屏幕高度或者宽度
	 * @param context	上下文
	 * @param view		控件
	 * @param rate		比率
	 * @param orientation	比如设置宽,高,同时设置
	 */
	public static void setHeight(Context context,View view,double rate,int orientation){
		WindowManager manager = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
		int width = manager.getDefaultDisplay().getWidth();
		int height = manager.getDefaultDisplay().getHeight();
		switch (orientation) {
		case WIDTH:
			view.getLayoutParams().width = (int) (width*rate);
			break;
		case HEIGHT:
			view.getLayoutParams().height = (int) (height*rate);
			break;
		case BOTH:
			view.getLayoutParams().width = (int) (width*rate);
			view.getLayoutParams().height = (int) (height*rate);			
			break;
		case BOTHWIDTH:
			view.getLayoutParams().width = (int) (width*rate);
			view.getLayoutParams().height = (int) (width*rate);			
			break;
		}
	}

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。