gpt4 book ai didi

java - match_parent 布局参数不起作用?

转载 作者:行者123 更新时间:2023-12-01 04:32:16 26 4
gpt4 key购买 nike

我正在尝试为 ArrayAdapter 创建 View 。我就是这样做的:

FrameLayout rowView = new FrameLayout(context);
rowView.setBackgroundColor(Color.BLUE);
RelativeLayout.LayoutParams lp2 = new RelativeLayout.LayoutParams(
RelativeLayout.LayoutParams.MATCH_PARENT,
RelativeLayout.LayoutParams.WRAP_CONTENT);
lp2.setMargins(0, 0,
context.getResources()
.getDimensionPixelSize(R.dimen.activity_divider_small), 0);
lp2.addRule(RelativeLayout.LEFT_OF, R.id.textView1);

ImageView view = new ImageView(context);
int size = context.getResources().getDimensionPixelSize(
R.dimen.image_avatar_size);
FrameLayout.LayoutParams lp0 = new FrameLayout.LayoutParams(size, size);
view.setBackgroundResource(R.drawable.va);
rowView.addView(view, lp0);

Button btn = new Button(context);
RelativeLayout.LayoutParams lp = new RelativeLayout.LayoutParams(
RelativeLayout.LayoutParams.WRAP_CONTENT,
RelativeLayout.LayoutParams.MATCH_PARENT);
lp.addRule(RelativeLayout.ALIGN_PARENT_RIGHT);
lp.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);
lp.addRule(RelativeLayout.ALIGN_PARENT_TOP);
btn.setBackgroundColor(Color.RED);
int padding = context.getResources().getDimensionPixelSize(
R.dimen.activity_margin);
btn.setPadding(padding, padding, padding, padding);
btn.setText(okButtonText);
btn.setId(R.id.textView1);

RelativeLayout layout = new RelativeLayout(context);
layout.addView(rowView, lp2);
layout.addView(btn, lp);

我的目的是垂直拉伸(stretch)带有 OK 标题的 textView。由于某种原因,按钮与其父级按钮不正确匹配。谁能指出我的错误吗?

编辑事情变得非常奇怪。众所周知,如果我们同时设置 ALIGN_PARENT_TOP 和 ALIGN_PARENT_BOTTOM 参数, View 将被垂直拉伸(stretch)。就我而言, View 放置在布局的底部(就像我仅设置 ALIGN_PARENT_BOTTOM 一样)。

这就是我得到的:

http://img13.imageshack.us/img13/3323/jqs.png

编辑

嗯,这个问题看起来有点像平台错误,所以我必须添加一个监听器来调整“确定”按钮的大小。

rowView.getViewTreeObserver().addOnGlobalLayoutListener(new ViewTreeObserver.OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
int height = rowView.getHeight();
btn.setHeight(height);
}
});

我仍在寻找更好的解决方案。

最佳答案

你应该尝试layout.addView(btn,lp);

关于java - match_parent 布局参数不起作用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17854117/

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