首页 > 解决方案 > 在Android中添加元素的绝对位置

问题描述

View我们正在以编程方式创建一个onCreate方法并尝试将以下任一设置为该视图-

但它不起作用。这些绝对位置可以相对于屏幕或父布局。这是重现相同事物的示例-

main.xml.

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:layout_width="match_parent"
    android:id="@+id/root"
    android:layout_height="match_parent">


</RelativeLayout>

这是MainActivity我正在以view编程方式尝试的地方。

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.main)

        val root = findViewById<RelativeLayout>(R.id.root)

        val layoutParams = RelativeLayout.LayoutParams(
            RelativeLayout.LayoutParams.WRAP_CONTENT,
            RelativeLayout.LayoutParams.WRAP_CONTENT
        )

        val view = TextView(this)
        view.layoutParams = layoutParams
        view.text = "Test View"
        
        //Applying top and left value in pixels.
        view.top = 100
        view.left = 100

        root.addView(view)

    }
}

top并且left值没有分配给视图。

我们尝试了许多其他布局-

我们也尝试过使用View#layout()方法,但它也不起作用。

我们参考了以下文章——

标签: androidandroid-layoutandroid-relativelayout

解决方案


推荐阅读