gpt4 book ai didi

android - 自定义 RelativeLayout 中缺少 View

转载 作者:行者123 更新时间:2023-11-29 21:31:01 24 4
gpt4 key购买 nike

我在修改 android 布局时遇到问题。在我扩展正常的相对布局使其自动变为正方形后,所有嵌入的其他 View 都将消失。

      <namespace.SquareRelativeLayout
android:layout_weight="1"
android:id="@+id/firstBtn"
android:background="#ff0000"
android:clickable="true"
android:layout_marginLeft="10dp"
android:layout_marginRight="10dp"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ImageView
android:id="@+id/firstBtnImage"
android:layout_centerHorizontal="true"
android:layout_marginTop="10dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/firstBtnDrawable" />
<TextView
android:id="@+id/firstBtnLabel"
android:layout_alignParentBottom = "true"
android:layout_centerHorizontal="true"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="5dp"
android:layout_marginBottom="10dp"
android:textColor="#ffffff"
android:text="@string/firstBtnlabel"
android:textStyle="bold" />
</namespace.SquareRelativeLayout>

但是没有显示 TextView 和 ImageView ,即使它们在屏幕的任何位置。

我感谢每一个后代。

编辑:

   namespace namespace
{
class SquareRelativeLayout : RelativeLayout
{
public SquareRelativeLayout (Context context, IAttributeSet attrs, int defStyle) : base (context, attrs, defStyle)
{
}

public SquareRelativeLayout (Context context, IAttributeSet attrs) : base (context, attrs)
{
}

public SquareRelativeLayout (Context context) : base (context)
{

}

protected override void OnMeasure (int widthMeasureSpec, int heightMeasureSpec)
{

//Get canvas width
int w = MeasureSpec.GetSize (widthMeasureSpec);
base.SetMeasuredDimension (w, w);
}
}
}

最佳答案

我解决了它,在阅读了一百多个网站后,我对 android View 和 layoutInflater 有了更好的理解。

但解决方案很简单,只需更换:

    int w = MeasureSpec.GetSize (widthMeasureSpec);
base.SetMeasuredDimension (w, w);

base.OnMeasure (widthMeasureSpec, widthMeasureSpec);

这会保留父级的 View 组,并可以添加子级。

关于android - 自定义 RelativeLayout 中缺少 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19514200/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com