在android中布局很重要,下面总结下布局的三种形式
①.在Activity的onCreate()方法中进行添加比如:setContentView(R.layout.activity_main);
android布局?②此种情况多用在适配器中进行加载,如下:
一种方法是用View.inflate()方法;
代码说明:前提是自定义了一个参数:private Context context;
@override代码是自定义一个适配器CalendarAdapter extends BaseAdapter中的getView()方法中来添加一个自定义的布局
calendar_cell_layout.xml.
Android不使用布局文件、@Override
public View getView(int position, View convertView, ViewGroup parent) {
// TODO Auto-generated method stub
ViewHolder holder = null;
if (convertView == null) {
android页面布局、convertView = View.inflate(context,R.layout.calendar_cell_layout,null);
holder = new ViewHolder();
holder.dayTextView = (TextView)convertView.findViewById(R.id.jkdayid);
holder.dayNLTextView = (TextView)convertView.findViewById(R.id.jkday_nlid);
holder.isdataImageView = (ImageView)convertView.findViewById(R.id.isdataid);
android五种布局,convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
public class ViewHolder {
android调整布局、public TextView dayTextView;
public TextView dayNLTextView;
public ImageView isdataImageView;
}
另外一种形式如下:用LayoutInflater.from(Context).inflate()方法。
Android布局方式,代码说明:是一个自定义的 class DeviceListAdapter extends BaseAdapter中的override的getView()方法。
@Override
public View getView(int position, View convertView, ViewGroup parent) {
if (convertView == null) {
convertView = LayoutInflater.from(MainActivity.this).inflate(
R.layout.list_bluetooth_item, null);
viewHolder = new ViewHolder();
viewHolder.tv_devName = (TextView) convertView
.findViewById(R.id.tv_blueth_name);
viewHolder.tv_devAddress = (TextView) convertView
.findViewById(R.id.tv_blueth_location);
viewHolder.tv_devStatus=(TextView)convertView.findViewById(R.id.tv_blueth_status);
convertView.setTag(viewHolder);
} else {
convertView.getTag();
}
}
}
class ViewHolder {
TextView tv_devName, tv_devAddress,tv_devStatus;
}
③写一个简单的方法来创建一个view对象:
private View initView() {
// TODO Auto-generated method stub
TextView textView = new TextView(this);
textView.setText("title");
textView.setTextSize(20);
textView.setTextColor(Color.RED);
textView.setGravity(Gravity.CENTER);
LinearLayout ll = new LinearLayout(this);
LayoutParams params = new LayoutParams(LayoutParams.MATCH_PARENT,
LayoutParams.MATCH_PARENT);
ll.setBackgroundColor(Color.WHITE);
ll.addView(textView, params);
return ll;
}
④在对各种布局都熟悉的情况下,采用自定义布局,对android系统提供的view进行继承,重写其中的方法,达到想要的效果后,然后在需要的地方进行引用。
以上均来自个人总结,如有不妥当之处,还烦请各位编程爱好者批评指正,共同进步!!!
版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。
工作时间:8:00-18:00
客服电话
电子邮件
admin@qq.com
扫码二维码
获取最新动态