Layout使用简单案例

import android.annotation.SuppressLint;
import android.app.Activity;
import android.app.ActionBar.LayoutParams;
import android.os.Bundle;
import android.widget.LinearLayout;
import android.widget.TextView;

//完全通过代码,来实现界面
public class LayoutOne extends Activity {
    private LinearLayout nameContainer = null;
    private LinearLayout addressContainer = null;
    private LinearLayout parentContainer = null;

    // 重写方法
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        createNameContainer();
        createAddressContainer();
        createParentContainer();
        setContentView(parentContainer);
    }

    // 创建nameContainer
    @SuppressLint("NewApi")
    private void createNameContainer() {
        nameContainer = new LinearLayout(this);
        // layout带有布局功能,例如设置横排、竖排,可以包含View,也可以包括替他layout,所以它同时也是一个容器
        // 在Android学习中,我们使用fill_parent,包括xml中使用fill_parent,在API Level 8(Android
        // 2.2)后,改为match_parent
        LayoutParams layoutParams = new LayoutParams(LayoutParams.MATCH_PARENT,
                LayoutParams.WRAP_CONTENT);
        nameContainer.setLayoutParams(layoutParams);
        nameContainer.setOrientation(LinearLayout.HORIZONTAL);
        // 设置内部View
        TextView txtView = new TextView(this);
        txtView.setText("姓名:");
        TextView valueView = new TextView(this);
        valueView.setText("张三");

        nameContainer.addView(txtView);
        nameContainer.addView(valueView);
    }

    // 创建addressContainer
    @SuppressLint("NewApi")
    private void createAddressContainer() {
        addressContainer = new LinearLayout(this);
        LayoutParams layoutParams = new LayoutParams(LayoutParams.MATCH_PARENT,
                LayoutParams.WRAP_CONTENT);
        addressContainer.setLayoutParams(layoutParams);
        addressContainer.setOrientation(LinearLayout.VERTICAL);

        TextView nameTextView = new TextView(this);
        nameTextView.setText("详细地址:");
        TextView valueTextView = new TextView(this);
        valueTextView.setText("化纤长路---丁家庄");

        addressContainer.addView(nameTextView);
        addressContainer.addView(valueTextView);
    }

    // 创建rootView,和前面两个container相似,不同的事addView不是加入普通的view,而是加入layout
    @SuppressLint("NewApi")
    private void createParentContainer() {
        parentContainer = new LinearLayout(this);
        LayoutParams lParams = new LayoutParams(LayoutParams.MATCH_PARENT,
                LayoutParams.WRAP_CONTENT);
        parentContainer.setLayoutParams(lParams);
        parentContainer.setOrientation(LinearLayout.VERTICAL);

        parentContainer.addView(nameContainer);
        parentContainer.addView(addressContainer);
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值