Java 以编程方式添加imageview约束问题
我正在使用Java 以编程方式添加imageview约束问题,java,android,xml,imageview,Java,Android,Xml,Imageview,我正在使用Android Studio构建一个应用程序(适用于Android),并且我面临着一些关于通过编程将ImageView添加到我的FrameLayout的位置的问题 第一件事:我有一个初始的ImageView在FrameLayout上,叫做AVATAR01,你可以在xml文件上看到: <FrameLayout android:id="@+id/LayJog" android:layout_width="200dp" android:layout_height
Android Studio
构建一个应用程序(适用于Android
),并且我面临着一些关于通过编程将ImageView
添加到我的FrameLayout
的位置的问题
第一件事:我有一个初始的ImageView
在FrameLayout
上,叫做AVATAR01
,你可以在xml
文件上看到:
<FrameLayout
android:id="@+id/LayJog"
android:layout_width="200dp"
android:layout_height="wrap_content"
android:layout_marginLeft="0dp"
android:layout_marginTop="0dp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent">
<ImageView
android:id="@+id/AVATAR01"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_marginLeft="10dp"
android:layout_marginTop="10dp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
tools:srcCompat="@drawable/avatar01" />
</FrameLayout>
上面的代码没有任何
运行时错误
,但程序将新图像放置在框架布局的(0,0)
位置。我很确定这与我添加的新ImageView
的约束设置有关,但我无法解决这个问题。有人知道如何将新的ImageView
放置在位置(10100)
?谢谢。我认为您可以通过向ImageView添加边距来解决此问题。
例如:
LinearLayout layout = findViewById(R.id.layout);
ImageView IMG02 = new ImageView(this);
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT , LinearLayout.LayoutParams.WRAP_CONTENT);
layoutParams.setMargins(LEFT , TOP , RIGHT , BOTTOM);
IMG02.setLayoutParams(layoutParams;
layout.addView(IMG02);
您必须插入您的值,而不是“左、上、右、下”谢谢!我用了layoutParams.setTop
来代替它,但它是相同的概念!太简单了……)
LinearLayout layout = findViewById(R.id.layout);
ImageView IMG02 = new ImageView(this);
LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT , LinearLayout.LayoutParams.WRAP_CONTENT);
layoutParams.setMargins(LEFT , TOP , RIGHT , BOTTOM);
IMG02.setLayoutParams(layoutParams;
layout.addView(IMG02);