Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/user-interface/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如何在Java代码中设置EditText的位置_Android_User Interface - Fatal编程技术网

Android 如何在Java代码中设置EditText的位置

Android 如何在Java代码中设置EditText的位置,android,user-interface,Android,User Interface,如何设置EditText的位置或边界?我想通过我的Java代码来完成,而不是在XML(布局)文件中。有没有办法设置位置?我通常是GUI方面的专家,但这以前从未出现过,因此欢迎使用任何解决方案。在Android中,您不能像setViewPos(x,y)那样明确设置视图的位置 你知道android布局/视图系统是如何工作的吗?如果您可以在XML中实现您想要做的事情,那么只需查看和查看setter方法与您正在使用的XML属性相对应的内容 如果您的视图已经存在于XML中,并且您希望在运行时对其进行处理,

如何设置EditText的位置或边界?我想通过我的Java代码来完成,而不是在XML(布局)文件中。有没有办法设置位置?我通常是GUI方面的专家,但这以前从未出现过,因此欢迎使用任何解决方案。

在Android中,您不能像setViewPos(x,y)那样明确设置视图的位置

你知道android布局/视图系统是如何工作的吗?如果您可以在XML中实现您想要做的事情,那么只需查看和查看setter方法与您正在使用的XML属性相对应的内容

如果您的视图已经存在于XML中,并且您希望在运行时对其进行处理,那么您需要引用它。在一般情况下,您处于活动中,并且正在修改当前布局中的视图:

EditText yourView = (EditText)this.findViewById(R.id.your_view);    
//set attributes 
//you'll crash if you haven't this.setContentView(view's parent layout)
否则:

LayoutInflater inflater = context.getLayoutInflater();
View tmp = inflater.inflate(R.layout.your_layout, null , true);
EditText yourView = (EditText)tmp.findViewById(R.id.your_view);
//set attrinutes
或者,如果您从头开始创建视图,只需创建一个实例并将其添加到布局中:

EditText et= new EditTExt();
//set attributes
LinearLayout parent = (LinearLayout) this.findViewById(R.id.layout_id);
parent.addView(et)
但是,如果您也不知道如何在XML中定位它,那么您必须沿着教程的小巷走一走,以找到适合您的情况的技术

AbsoluteLayout将是一个快速解决方案,但我不建议这样做,因为当你在不同屏幕大小和分辨率的手机上尝试应用程序时,你会得到一些糟糕的结果

重力和重量没有那么强大,但它们与屏幕大小没有紧密联系

如果您试图根据周围的视图放置视图,那么一定要使用 相对论


希望这有帮助

谢谢你的帮助,我知道我可以用XML来做,但我想我肯定也可以用Android来做,但我不确定怎么做,我想我会用XML重新做布局,然后从那里修复它。谢谢