读取XML布局文件的方式
自定义的方式public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Button bt; Button bt2; Button bt3; Button bt4; bt=(Button)findViewById(R.id.button1); bt2=(Button)findViewById(R.id.button2); bt3=(Button)findViewById(R.id.button3); bt4=(Button)findViewById(R.id.button4); Display display = this.getWindowManager().getDefaultDisplay(); int width = display.getWidth(); int height=display.getHeight(); bt.setHeight((int) ((height)*0.2)); bt2.setHeight((int) ((height)*0.3)); bt3.setHeight((int) ((height)*0.3)); bt4.setHeight((int) ((height)*0.2)); }
private void setByMe() { Display display = this.getWindowManager().getDefaultDisplay(); int width = display.getWidth(); int height=display.getHeight(); //TableLayout tab = new TableLayout(this); LinearLayout tab=new LinearLayout(this); tab.setOrientation(LinearLayout.VERTICAL); for(int i =0;i<12;i++){ //TableRow tr = new TableRow(this); TextView tv = new TextView(this); tv.setText("ssss"+i); tv.setWidth((int) ((width)*0.3)); tv.setHeight((int) ((height)*0.1)); EditText et = new EditText(this); et.setWidth((int) ((width)*0.7)); et.setHeight((int) ((height)*0.1)); // tr.addView(tv); // tr.addView(et); et.setText(i+""); tab.addView(et); } setContentView(tab); }
得到屏幕窗口大小 // get the window resolution private static DisplayMetrics dm; private static int m_dispWidth; private static int m_dispHeight;
dm = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(dm); m_dispWidth = dm.widthPixels; m_dispHeight = dm.heightPixels;
调整控件位置和大小: private EditText et_longitude; AbsoluteLayout.LayoutParams lp;
lp = new AbsoluteLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT, 0, 0);
lp.x = x; lp.y = y; lp.height = m_etHeight; lp.width = m_etWidth; et_longitude.setLayoutParams(lp);
设置控件显示字体大小:(list 不可用这种方法) et_longitude.setTextSize(TEXT_SIZE);
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- LinearLayout ll = (LinearLayout)findViewById(R.id.LinearLayout01);
- for (int i = 0; i < ll.getChildCount(); i++) {
- ((TextView) ll.getChildAt(i)).setText("Text View " +i);
- }
根据控件名获得控件的idint id = R.id.class.getField("s" + i).getInt(0);