91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么在Android中實現動態布局

發布時間:2021-03-26 17:07:23 來源:億速云 閱讀:296 作者:Leah 欄目:移動開發

這篇文章將為大家詳細講解有關怎么在Android中實現動態布局,文章內容質量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

三種布局情況(注意不是方式)

1、無xml : 一個父類布局包含一個子父類布局,子父類布局中包含ImageView

2、無xml : 只有一個父類布局包含一個ImageView

3、有xlm布局: 通過布局ID 來進行動態布局添加

總結了下其實步驟如下:

無xml布局:

1、setContentView()之前new一個需要的布局layout,再將layout放入setContentView()

2、new 出需要的控件設置好參數(id、text···)

3、new LayoutParams 設置好控件的大小、位置屬性(這里感覺和xml設置控件屬性是一樣的)

4、最后將params和控件放入之前new的layout即可  

有xml布局:

1、setContentView()和以前一樣放入layout.xml

2、通過findViewById()找到要進行添加的布局控件

之后的步驟和無xml布局的2、3、4一樣

代碼如下:

1、無xml : 一個父類布局包含一個子父類布局,子父類布局中包含ImageView

RelativeLayout relativeLayout = new RelativeLayout(this);
 setContentView(relativeLayout);
 
 RelativeLayout rl = new RelativeLayout(this);
 rl.setId(11);
 ImageView imageView = new ImageView(this);
 imageView.setId(1);
 imageView.setImageResource(R.mipmap.ic_launcher);
 
 RelativeLayout.LayoutParams lpRl = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT,
  ViewGroup.LayoutParams.WRAP_CONTENT);
 rl.setGravity(RelativeLayout.CENTER_IN_PARENT); //設置imageView 在 rl中的位置為居中
 rl.addView(imageView, lpRl);
 
 RelativeLayout.LayoutParams lpParent = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,
  ViewGroup.LayoutParams.MATCH_PARENT);
 relativeLayout.addView(rl,lpParent);

2、無xml : 只有一個父類布局包含一個ImageView

RelativeLayout relativeLayout = new RelativeLayout(this);
 setContentView(relativeLayout);
 
 ImageView imageView = new ImageView(this);
 imageView.setId(2);
 imageView.setImageResource(R.mipmap.ic_launcher);
 //params 可以理解為 imageView的位置、大小參數集合
 RelativeLayout.LayoutParams params = new RelativeLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
 params.addRule(RelativeLayout.CENTER_IN_PARENT);
 relativeLayout.addView(imageView,params);

3、有xlm布局: 通過布局ID 來進行動態布局添加

public class ThirdActivity extends AppCompatActivity {
 
 private LinearLayout mLinearLayout;
 
 @Override
 protected void onCreate(@Nullable Bundle savedInstanceState) {
 super.onCreate(savedInstanceState);
 setContentView(R.layout.activity_third);
 
 mLinearLayout = (LinearLayout) findViewById(R.id.linear_layout);
 ImageView imageView = new ImageView(this);
 imageView.setImageResource(R.mipmap.ic_launcher);
 imageView.setId(31);
 LinearLayout.LayoutParams params = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT);
 params.setMargins(150, 80, 10, 0);
 mLinearLayout.addView(imageView, params);
 }
}
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  android:id="@+id/linear_layout"
  android:orientation="vertical"
  android:layout_width="match_parent"
  android:layout_height="match_parent">
</LinearLayout>

關于怎么在Android中實現動態布局就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

沾化县| 喀喇沁旗| 衡南县| 安平县| 庐江县| 肥东县| 抚松县| 长子县| 衡南县| 台东县| 祁门县| 和硕县| 昌黎县| 平顶山市| 黄浦区| 湄潭县| 石泉县| 温州市| 昆明市| 门源| 长沙县| 叙永县| 调兵山市| 宣恩县| 永昌县| 承德县| 家居| 长阳| 金川县| 吉首市| 南漳县| 大冶市| 天津市| 惠东县| 平顺县| 南丹县| 木兰县| 博野县| 双城市| 宜黄县| 荥经县|