Nav
02/07/2023, 8:43 AM<Button
android:id="@+id/profileButton"
android:layout_width="28dp"
android:layout_height="28dp"
android:layout_marginStart="200dp"
android:layout_marginTop="7dp"
android:background="@drawable/round_corners_avatar"
android:text="AL"
android:textColor="#FFFFFF"
android:onClick="profileBtnClicked"
android:textSize="16sp" />
I would like to change the android:layout_marginStart
parameter based on the information i receive from resources.displayMetrics.density
However I do not know how to access marginStart parameter programatically.
Any clues would be much appreciated.Android Mahi
02/07/2023, 8:59 AMNav
02/07/2023, 9:02 AMval btn = FindViewById(R.id.profilebtn)
btn.setMarginStart() ???
Android Mahi
02/07/2023, 9:05 AMLayoutParams params = new LayoutParams(
LayoutParams.WRAP_CONTENT,
LayoutParams.WRAP_CONTENT
);
params.setMargins(left, top, right, bottom);
button.setLayoutParams(params);
Nav
02/07/2023, 9:13 AMAndroid Mahi
02/07/2023, 9:14 AMNav
02/07/2023, 9:16 AMUnresolved reference : top
errorAndroid Mahi
02/07/2023, 9:17 AMNav
02/07/2023, 9:20 AMimport android.R.attr.left
import android.R.attr.right
import <http://android.R.attr.top|android.R.attr.top>
import android.R.attr.bottom
Android Mahi
02/07/2023, 9:21 AMNav
02/07/2023, 9:23 AMAndroid Mahi
02/07/2023, 9:23 AMNav
02/07/2023, 9:23 AMmarginStart = 358dp
to marginStart = 340dp
i change left = 340
java.lang.ClassCastException: androidx.constraintlayout.widget.ConstraintLayout$LayoutParams cannot be cast to android.widget.FrameLayout$LayoutParams
FrameLayout.LayoutParams
would make it work?Android Mahi
02/07/2023, 9:30 AMNav
02/07/2023, 9:31 AMFrameLayout.LayoutParams
fixed it.
Thank you.left
parameter and keep the rest of it the same then those would default to whatever the initial XML file defined them as right? So for example android:layout_marginTop="7dp"
means that top ill default to 7dp
?