java - 仅显示最后添加的按钮

标签 java android button android-framelayout layoutparams

我试图以编程方式向 FrameLayout 添加 9 个按钮,但只显示最后一个按钮。

下面的代码适用于第一个按钮,我对所有其他按钮也这样做,但坐标不同。

我想为每个按钮添加这些精确的坐标。

抱歉英语不好;)

    FrameLayout.LayoutParams rel_btn = new FrameLayout.LayoutParams(
            LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT);
    Button button1 = new Button(this);
    button1.setBackgroundResource(R.drawable.empty);
    rel_btn.width = screenWidth/4;
    rel_btn.height = screenWidth/4; 
    rel_btn.leftMargin = screenWidth/8;
    rel_btn.topMargin = screenHeight-1100;              
    button1.setLayoutParams(rel_btn);
    rl.addView(button1);

最佳答案

我发现这个答案可能可以解释您的问题:FrameLayout margin not working

FrameLayout 可能会忽略边距,因为您没有指定重力。尝试添加重力:rel_btn.gravity = Gravity.TOP;

关于java - 仅显示最后添加的按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25317681/

相关文章:

python - 由图像制成的按钮 - Tkinter

java - 为什么 JMenuItem 上的这个 Actionlistener 没有执行?

android - 有没有办法检测 Android 上使用的是哪个蜂窝网络?

wpf - WPF 中的 Google 样式按钮

java - 扩展 Android 按钮类

java - 使用 HttpURLConnection 的 Android 分段文件上传 - 400 错误请求错误

Java/JVM : call native C method using it's address and signature

java - 在 Java 中嵌入 Groovy(绑定(bind))

java - 如何计算循环中的操作次数并给出 theta 表征

java - Android - 使用 LongClickListener 而不是 OnTouch 进​​行拖动?