java layoutinflater不会膨胀整个布局
我试图将这个constrains layout膨胀到另一个约束布局中
但是当我运行它时,我只得到了pink card四个图像视图没有出现在卡中
这里是主XML文件,我需要在其中扩展另一个布局
<?xml version="1.0" encoding="utf-8"?>
<安卓x.constraintlayout.widget.ConstraintLayout
xmlns:安卓="http://schemas.安卓.com/apk/res/安卓"
xmlns:app="http://schemas.安卓.com/apk/res-auto"
xmlns:tools="http://schemas.安卓.com/tools"
安卓:layout_width="match_parent"
安卓:layout_height="match_parent"
安卓:background="@mipmap/wall"
tools:context=".StepThreeActivity">
<安卓x.constraintlayout.widget.ConstraintLayout
安卓:id="@+id/constraintLayout2"
安卓:layout_width="374dp"
安卓:layout_height="635dp"
安卓:background="@drawable/card"
安卓:backgroundTint="@color/white"
安卓:elevation="@dimen/cardview_default_elevation"
安卓:padding="13dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<com.google.安卓.material.floatingactionbutton.FloatingActionButton
安卓:id="@+id/back"
安卓:layout_width="wrap_content"
安卓:layout_height="wrap_content"
安卓:layout_marginStart="5dp"
安卓:layout_marginBottom="11dp"
安卓:backgroundTint="@color/Blue"
安卓:clickable="true"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:srcCompat="@drawable/back" />
<com.google.安卓.material.floatingactionbutton.FloatingActionButton
安卓:id="@+id/forward"
安卓:layout_width="wrap_content"
安卓:layout_height="wrap_content"
安卓:layout_marginBottom="11dp"
安卓:backgroundTint="@color/Blue"
安卓:clickable="true"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:srcCompat="@drawable/forward" />
</安卓x.constraintlayout.widget.ConstraintLayout>
</安卓x.constraintlayout.widget.ConstraintLayout>
下面是与前面的主XML相关的java类
public class StepThreeActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_step_three);
initialization();
characterInitialization();
LayoutInflater inflater =
(LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
inflater.inflate(R.layout.card1,
constraintLayout, true);
}
这是卡片1。xml代码
<?xml version="1.0" encoding="utf-8"?>
<安卓x.constraintlayout.widget.ConstraintLayout
安卓:id="@+id/constraintLayout2c"
xmlns:安卓="http://schemas.安卓.com/apk/res/安卓"
xmlns:app="http://schemas.安卓.com/apk/res-auto"
xmlns:tools="http://schemas.安卓.com/tools"
安卓:layout_width="wrap_content"
安卓:layout_height="wrap_content">
<安卓x.constraintlayout.widget.ConstraintLayout
安卓:layout_width="347dp"
安卓:layout_height="366dp"
安卓:layout_marginTop="16dp"
安卓:background="@drawable/card"
安卓:backgroundTint="#FBD5D8"
安卓:elevation="@dimen/cardview_default_elevation"
安卓:padding="13dp"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.0"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<ImageView
安卓:id="@+id/imageView1"
安卓:layout_width="111dp"
安卓:layout_height="149dp"
安卓:layout_marginStart="40dp"
安卓:layout_marginTop="16dp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:srcCompat="@mipmap/a1" />
<ImageView
安卓:id="@+id/imageView2"
安卓:layout_width="106dp"
安卓:layout_height="150dp"
安卓:layout_marginStart="172dp"
安卓:layout_marginTop="168dp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:srcCompat="@mipmap/a2" />
<ImageView
安卓:id="@+id/imageView3"
安卓:layout_width="112dp"
安卓:layout_height="152dp"
安卓:layout_marginStart="40dp"
安卓:layout_marginTop="164dp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:srcCompat="@mipmap/a3" />
<ImageView
安卓:id="@+id/imageView4"
安卓:layout_width="115dp"
安卓:layout_height="153dp"
安卓:layout_marginStart="172dp"
安卓:layout_marginTop="16dp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:srcCompat="@mipmap/a4" />
</安卓x.constraintlayout.widget.ConstraintLayout>
</安卓x.constraintlayout.widget.ConstraintLayout>
# 1 楼答案
问题是,这4张卡的图片没有出现,因为你实际上没有将它们添加到布局中
card1的片段。xml:
当你使用
tools
名称空间时,你只会影响android studio布局验证窗格中的布局,而这不会影响你运行应用程序时的布局有关
tools
namesapce的更多信息,您可以查看documentation要解决这个问题,需要用
app
名称空间替换tools
。所以你的名片。xml布局将是:# 2 楼答案
你真的需要用这种方式膨胀布局吗
你不能把这个布局包括进去吗
整个xml文件: