android - 通过代码创建布局

标签 android

我通过代码创建了布局,这样我就可以使用下面的代码在该布局上添加多个 View 。

public class AndroidPrepChart extends Activity {

    GraphicalView gView;
    GraphicalView gView2;
    GraphicalView gView3;

    BarChart barChart = new BarChart();
    BarChart2 barChart2 = new BarChart2();
    BarChart3 barChart3 = new BarChart3();

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        gView = barChart.execute2(this);
        gView2 = barChart2.execute2(this);
        gView3 = barChart3.execute2(this);

        LinearLayout layout = new LinearLayout(this);

        layout.addView(gView, 150, 200);
        layout.addView(gView2, 150, 200);
        layout.addView(gView3, 150, 150);

        setContentView(layout);

     }
}

这里的输出屏幕包含三个图表,但我想将第三个图表放在第二行。请帮我解决这个问题。我是 Android 初学者。

最佳答案

您可以通过嵌套多个 LinearLayout 并更改方向属性来实现此目的

在 XML 中,这看起来像这样(只显示相关的元素和属性):

<LinearLayout android:orientation="vertical">
    <LinearLayout android:orientation="horizontal">
        <!-- Your first 2 graphs go in this LinearLayour -->
    </LinearLayout>

    <LinearLayout android:orientation="horizontal">
        <!-- The third graph goes in here -->
    </LinearLayout>
</LinearLayout>

您可以使用 setOrientation method 以编程方式操纵 LinearLayout 的方向.例如:

LinearLayout ll = new LinearLayout(this);
ll.setOrientation(LinearLayout.VERTICAL);

关于android - 通过代码创建布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3271215/

相关文章:

java - 在android中每2小时调用一次方法的最佳方法?

android - 安装 ngmap 后应用程序大小变得非常大

Android Studio 布局预览默认主题

java - Kotlin android studio holder.itemview 问题

java - Android 构建失败 - java.lang.IllegalArgumentException : already added: Lcom/google/api/client/escape/CharEscapers;

android - 如何使 Activity 窗口始终保持在顶部

android - 使用 Overlays 时如何缓存 android.graphics.path 或 Bitmap?

android - 如何对 Android logcat 输出进行子串化并仅显示消息本身

android openfilechooser 方法不调用已签名的 apk

android - 使用开发和发布数据库设置 Firebase 进行调试和发布