بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
ست کردن عرض لایه به مقدار ارتفاعش(مربع)
سلام.دوستان چطوری میتونم عرض یک لایه رو بگیرم و مقدارش را به عنوان ارتفاع لایه ست کنم تا لایه به شکل مربع دربیاد.
کد زیر رو امتحان کردم ولی درست جواب نمیدهد!!
LinearLayout mLinearLayout=(LinearLayout)findViewById(R.id.linearLayout); int screenWidth = mContext.getResources().getDisplayMetrics().widthPixels; int screenHeight = mContext.getResources().getDisplayMetrics().widthPixels; mLinearLayout.measure(screenWidth, screenHeight); int layoutWidth = mLinearLayout.getMeasuredWidth(); ViewGroup.LayoutParams params = mLinearLayout.getLayoutParams(); mLinearLayout.height = layoutWidth; mLinearLayout.setLayoutParams(params);
0
0
درست جواب نمیده یعنی چی؟ (10 سال پیش)
برای این سوال 1 پاسخ وجود دارد.
پاسخ به سوال
Spirit
10 سال پیش
+2
0
از LinearLayout یه کلاس extend کنید، بعد متد onMeasure رو به این شکل تغییر بدید. کوچیک ترین اندازه میشه عرض و ارتفاع لایه:
@Override
protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
super.onMeasure(widthMeasureSpec, heightMeasureSpec);
int minSize = Math.min(getMeasuredWidth() , getMeasuredHeight());
setMeasuredDimension(minSize,minSize);
}
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .