android - 如何通过代码修改marginTop?

标签 android layout android-edittext

我正在尝试找到一种通过代码修改 EditText 的 marginTop 的方法...我阅读了有关 setLayoutParams 的内容,但我收到了 ForceClose 和此消息:

08-05 14:53:59.715: ERROR/AndroidRuntime(913): java.lang.ClassCastException: android.widget.LinearLayout$LayoutParams
08-05 14:53:59.715: ERROR/AndroidRuntime(913):     at android.widget.RelativeLayout$DependencyGraph.findRoots(RelativeLayout.java:1291)
08-05 14:53:59.715: ERROR/AndroidRuntime(913):     at android.widget.RelativeLayout$DependencyGraph.getSortedViews(RelativeLayout.java:1238)
08-05 14:53:59.715: ERROR/AndroidRuntime(913):     at android.widget.RelativeLayout.sortChildren(RelativeLayout.java:279)
08-05 14:53:59.715: ERROR/AndroidRuntime(913):     at android.widget.RelativeLayout.onMeasure(RelativeLayout.java:299)
08-05 14:53:59.715: ERROR/AndroidRuntime(913):     at android.view.View.measure(View.java:7964)

谁能解释一下我应该做什么?

giveuser = (EditText) findViewById(R.id.txt_username);
LinearLayout.LayoutParams lp = new LinearLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT, LinearLayout.LayoutParams.WRAP_CONTENT);
        lp.setMargins(5,5,5,5);
        giveuser.setLayoutParams(lp);

在 xml 中:

<EditText android:id="@+id/txt_username"
        android:layout_height="wrap_content" android:layout_width="350px"
        android:layout_centerHorizontal="true" android:layout_below="@+id/loginsubtitle"
        android:layout_marginTop="180dip" android:singleLine="true"
        android:hint="Identifiant" />

最佳答案

试试这个:

LayoutParams params = EditTextName.getLayoutParams();
params.setMargins(left, top, right, bottom);
EditTextName.setLayoutParams(params);

关于android - 如何通过代码修改marginTop?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6955884/

相关文章:

android - 每次都创建一个新的 SharedPreferences 对象来读取配置变量?

android - 在 iphone 4 android 4.1 上平滑的 CSS3 转换

android - 如何检测 GCM "collapsed"消息?

android - 布局检查器错误。在模拟器中,应用程序不会更新旧布局

java - 如何使用 iText 为我的 (pdf-) 文本添加背景颜色以使用 Java 创建它

android - 自定义编辑带边框的文本

android - 无法禁用长按 editText

android - SoapFault - 故障代码 : '1062' faultstring: 'Shipping method is not available'

jquery - 定位选择器具有在不同屏幕尺寸上缩放的正确尺寸

android - 如何检查 EditText 是否有焦点?