Java 如何让我的按钮适合安卓系统的屏幕?

Java 如何让我的按钮适合安卓系统的屏幕?,java,android,view,Java,Android,View,我有一个方法,可以获取一个文本字符串,将其切碎,然后用字符串中的所有单词制作按钮。我将这些添加到水平线性布局中,如下所示: for (int x = 0; i < string.length; x++) { Button word = new Button(context); word.setText(string[x]+""); myLinearLayout.addView(word); } for

我有一个方法,可以获取一个文本字符串,将其切碎,然后用字符串中的所有单词制作按钮。我将这些添加到水平线性布局中,如下所示:

for (int x = 0; i < string.length; x++) {
            Button word = new Button(context);
            word.setText(string[x]+"");
            myLinearLayout.addView(word);
        }
for(int x=0;i
问题是,如果字符串太长,按钮将离开屏幕。如何使按钮显示在下面的一行上,而不是跳出屏幕?我一整天都在寻找解决办法,但找不到答案

谢谢

试试这个

   for (int x = 0; i < string.length; x++) {
        Button word = new Button(context);
        word.setText(string[x]+"");
        LinearLayout.LayoutParams left_on = new LinearLayout.LayoutParams(0, LinearLayout.LayoutParams.WRAP_CONTENT,1);
        word.setLayoutParams(left_on);
        myLinearLayout.addView(word);
    }
for(int x=0;i
是否使用较短的文本?使用字体度量来获得单词的总长度,或者根据当前迭代之前所有单词中的字母数使用一个简单算法,如果超过X,则添加一个换行符,其中X取决于屏幕宽度?谢谢,这非常有帮助!但是,它只通过使按钮变小而不是生成新行,从而将按钮保留在视图中。我意识到水平线性布局只能水平堆叠视图,但我不确定应该使用什么替代。您可以使用