安卓如何動態生成布局
1. android怎樣動態設置布局居中
首先,標簽有兩種,一個是布局(各種Layout),一個是控制項(Button,TextView之類)。
上下左右中的位置參數,有: android:gravity ,和 android:layout_gravity。
android:gravity ,是指布局容器,對於自己內部控制項的布局方向,在Layout標簽描述,作用於Layout內的各個控制項。(對內有效)
android:Layout_gravity,是控制項自己,在布局容器的布局方向,在控制項標簽描述,只對自己在布局容器位置有效。(對外有效)
2. Android 動態布局該如何實現!!
你的問題應該是要動態生成空間吧。
下面的答案可以參考下。
首先要卻這個界面的布局,是AbsoluteLayout,RelativeLayout還是其他,然後就可以再裡面添加控制項了:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//確定界面的布局
AbsoluteLayout abslayout=new AbsoluteLayout (this);
setContentView(abslayout);
//創建一個button按鈕
Button btn1 = new Button(this);
btn1.setText(」this is a button」);
btn1.setId(1);
//確定這個控制項的大小和位置
AbsoluteLayout.LayoutParams lp1 =
new AbsoluteLayout.LayoutParams(
ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT,
0,100);
abslayout.addView(btn1, lp1 );
}
一個界面可以布置一個布局,可以多個布局一起設計:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//設置界面的布局
RelativeLayout relativeLayout = new RelativeLayout(this);
setContentView(relativeLayout);
//添加一個AbsoluteLayout子布局,並給這個布局添加一個button
AbsoluteLayout abslayout=new AbsoluteLayout (this);
abslayout.setId(11);
Button btn1 = new Button(this);
btn1.setText(」this is a abslayout button」);
btn1.setId(1);
AbsoluteLayout.LayoutParams lp0 = new AbsoluteLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT,
ViewGroup.LayoutParams.WRAP_CONTENT,100,0);
abslayout.addView(btn1, lp0 );
//將這個子布局添加到主布局中
RelativeLayout.LayoutParams lp1 = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
lp1.addRule(RelativeLayout.ALIGN_PARENT_TOP);
lp1.addRule(RelativeLayout.CENTER_HORIZONTAL, RelativeLayout.TRUE);
relativeLayout.addView(abslayout ,lp1);
//再添加一個子布局
RelativeLayout relativeLayout1 = new RelativeLayout(this);
Button btn2 = new Button(this);
btn2.setText(」this is a relativeLayout1 button」);
btn2.setId(2);
RelativeLayout.LayoutParams lp2 = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.FILL_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);
lp2.addRule(RelativeLayout.ALIGN_PARENT_TOP);
lp2.addRule(RelativeLayout.CENTER_HORIZONTAL, RelativeLayout.TRUE);
relativeLayout1.addView(btn2 ,lp2);
//將這個布局添加到主布局中
RelativeLayout.LayoutParams lp11 = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
lp11.addRule(RelativeLayout.BELOW ,11);
relativeLayout.addView(relativeLayout1 ,lp11);
}
3. 很簡單的送分題又來了,高手還不進來android如何動態include布局文件,答得好的追加100分
inflate函數可以見xml布局文件刷成view,然後java中獲得activity的view的父節點,然後通過addview就可以動態加入你要的view了
4. android 如何實現動態添加布局
如下代碼:
LinearLayout layout = new LinearLayout(this);
TextView tx = new TextView(this);
tx.setText('我是動態添加的');
layout.addView(tx);
setContentView(layout);
這就動態添加了一個線性布局,並且在布局裡面加了一個textview
5. android 動態設置布局寬度
例如設置一個圖片寬高 關鍵代碼:
//取控制項當前的布局參數
LinearLayout.LayoutParams params = (LinearLayout.LayoutParams) imageView.getLayoutParams();
//設置寬度值
params.width = dip2px(MainActivity.this, width);
//設置高度值
params.height = dip2px(MainActivity.this, height);
//使設置好的布局參數應用到控制項
imageView.setLayoutParams(params);
1
2
3
4
5
6
7
8
1
2
3
4
5
6
7
8
高度除了可以設置成以上固定的值,也可以設置成wrap_content或match_content
ViewGroup.LayoutParams.WRAP_CONTENT
ViewGroup.LayoutParams.MATCH_PARENT
1
2
1
2
在這里插入圖片描述
xml
6. 求教大神安卓如何動態添加復雜布局以及注冊事件監聽
說一下自己的思路
將表內容抽取成javabean類,提供setget方法,並提供默認值,當你創建第一個表格的時候創建一個List用於存當前表格對象,一張表格填寫完畢的時候將表格對象添加到list裡面,然後寫一個重置數據方法,清空當前大舉棗表格的值並且給他賦默認值,(這里只需要將表格id設置為list.size()+1即可,其他內容全部默認值),每提交一次表格就添加到list,所有表格填完以後答李記得把list的內容存到資料庫就行了滾拆
7. 安卓開發 動態添加布局設置idsetid怎麼用
在線性布局LinearLayout里加入view比較簡單,因為屬性比較少,布局簡單 示例,加入一個TextView LinearLayout layout = (LinearLayout)findViewById(R.id.layout);TextView tv = new TextView(this);tv.setText("hello,world");LayoutParams l
8. Android怎麼動態設置一個布局在另一個布局的上面,代碼怎麼寫。
試試用setVisibility改變布局的可見配肢與不可見性,隱旦還可以用Fragment動態載入,代碼實現可在網上搜索。培攜世
9. 安卓編程中怎麼動態改變一個控制項的布局方式
首先你要確定你的viewpager是處在一個可全屏的父容器內的,比如一種不可能的方式是你在一個linearlayout裡面,前面已經有view佔位了,你就不可能全屏,所以,假設租跡你的父容弊畢並器是一個全屏的relativelayout,你的viewpager的布局在不全屏的時候可能是用的below,above這些相對位置,或者margin,padding這些屬性,或者直接用的wrapcontent,那麼你在全屏按鈕的響應事件里,給viewpager設置layoutparams為match_parent,把margin,padding這些設置為0,把below,above這些規則都去掉,然後viewpager.invalidate();就可以了,具體看你靜態布局怎麼寫的,要相對的做操數手作
10. Android 動態的添加xml布局
1 在res/layout 中新建一個xxx.xml布局文件
2.在新建的布局文件中填寫想要的布局內容(如下)
3.通過下面的方式完成