【发布时间】:2017-06-18 04:47:45
【问题描述】:
我创建了这样的布局:
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/rlMenu"
android:layout_centerHorizontal="true"
android:gravity="center"
android:layout_centerVertical="true">
<RelativeLayout
android:background="@drawable/dark_rectangle_bord"
android:id="@+id/rl1dia"
android:elevation="10dp"
android:layout_alignParentLeft="true"
android:layout_alignParentStart="true"
android:layout_width="@dimen/sizeCard"
android:layout_height="@dimen/sizeCard"
android:layout_marginBottom="@dimen/padding_bottom_cards"
android:layout_marginEnd="@dimen/padding_end_cards"
android:layout_marginRight="@dimen/padding_end_cards"
android:layout_marginLeft="@dimen/padding_start_cards"
android:layout_marginStart="@dimen/padding_start_cards"
android:layout_marginTop="@dimen/padding_top_cards">
<TextView
android:text="1º Dia"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:id="@+id/tv1dia"
android:textStyle="normal|bold"
android:textColor="@color/Branco"
android:layout_alignParentBottom="true"
android:padding="10dp"
android:textSize="@dimen/texto_pequeno"
android:gravity="center"
android:fontFamily="sans-serif"
android:layout_centerHorizontal="true"/>
<ImageView
app:srcCompat="@drawable/ic_calendario_1"
android:id="@+id/iv1dia"
android:layout_width="@dimen/sizeImage"
android:layout_height="@dimen/sizeImage"
android:layout_centerHorizontal="true"
android:layout_alignParentTop="true"
/>
在那之后,我将它包含在我的 MainActivity 中。
<include
android:id="@+id/my_custom_view"
layout="@layout/custom_view></include>
但是在这个自定义视图中有一个RelativeLayout、一个ImageView 和一个TextView。我需要动态创建一些自定义视图,示例如下。
如何以编程方式创建此自定义视图? 例如:
Button bt = new Button(MainActivity.this);
我怎样才能以编程方式更改TextView、RelativeLayout、背景和ImageView?喜欢:
CustomView cv = new CustomView(MainActivity.this);
cv.setImage(R.drawable.chips);
cv.setRlBackground(Color.WHITE);
cv.setText("Hello, World!");
【问题讨论】:
-
你应该直接在 mainactivity 中进行布局,而不是在其他地方然后包含它。
标签: java android xml android-layout android-custom-view