yao*_*yao 2 layout android margin
下面是textview布局,我希望在代码中将layout_marginRight修改为零.
<TextView
android:id="@+id/status1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="right"
android:layout_marginRight="@dimen/keyguard_lockscreen_status_line_font_right_margin"
android:singleLine="true"
android:ellipsize="marquee"
android:textAppearance="?android:attr/textAppearanceMedium"
android:textSize="@dimen/keyguard_lockscreen_status_line_font_size"
android:drawablePadding="4dip"
/>
Run Code Online (Sandbox Code Playgroud)
当我将aqif代码复制到我的代码中时,手机会在开机动画时暂停.
private void updateStatus1() {
if (mStatus1View != null) {
MutableInt icon = new MutableInt(0);
CharSequence string = getPriorityTextMessage(icon);
mStatus1View.setText(string);
LinearLayout.LayoutParams params = (LinearLayout.LayoutParams) mStatus1View.getLayoutParams();
params.rightMargin = 0;
mStatus1View.setLayoutParams(params);
mStatus1View.setCompoundDrawablesWithIntrinsicBounds(icon.value, 0, 0, 0);
mStatus1View.setVisibility(mShowingStatus ? View.VISIBLE : View.INVISIBLE);
}
}
Run Code Online (Sandbox Code Playgroud)
你可以这样做.
LinearLayout.LayoutParams params = (LinearLayout.LayoutParams) view.getLayoutParams();
params.rightMargin = 30;
view.setLayoutParams(params);
Run Code Online (Sandbox Code Playgroud)
设置值dp可以这样做.
params.rightMargin = (int) (30f * this.getResources().getDisplayMetrics().density);
Run Code Online (Sandbox Code Playgroud)
并且params的类型取决于它的父级,如果你的视图父级是LinearLayout你的params必须是LinearLayout.LayoutParams类型,并且在RelativeLayout你的情况下,你的params必须是RelativeLayout.LayoutParams类型.
问候,Aqif Hamid
| 归档时间: |
|
| 查看次数: |
4457 次 |
| 最近记录: |