【问题标题】:Android Programmatically adding the textview [closed]Android以编程方式添加文本视图[关闭]
【发布时间】:2023-03-20 04:45:02
【问题描述】:

所以从调试和注释掉的东西我得出的结论是这个程序的问题出在 addTextView() 方法中。我完全不知道问题出在哪里。我的猜测是在我试图添加到 TextView 的布局中。 非常感谢您的帮助。

public class Books extends Activity{
    @Override
    public void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.books);
        addTextView("Hello World");
    }


    public void addTextView(String text)
    {
        ScrollView viewport = (ScrollView)findViewById(R.id.books);
        TextView textview= (TextView)new TextView(this);
        textview.setText(text);
        //textview.setLayoutParams(new ScrollView.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
        viewport.addView(textview, new ScrollView.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
    }

    public void addButton(String text)
    {
        ScrollView scrollview = (ScrollView)findViewById(R.id.books);
        Button btnTag = (Button)new Button(Books.this);
        btnTag.setLayoutParams(new ScrollView.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.WRAP_CONTENT));
        btnTag.setText(text);
        scrollview.addView(btnTag);
    }

}

【问题讨论】:

  • 请发布您的 LogCat 错误。
  • 您可能会考虑将 ScrollView 存储为一个字段,然后您对它的所有引用都将使用相同的名称(这将有助于使您的 Activity 易于阅读)并且会浪费更少的内存。跨度>
  • 好的,我认为这是一个有效的问题,我不知道他们为什么关闭它。感谢上帝,ataulm 是个天才,他完全理解它。这真是太可惜了,因为其他人会对此感到困惑,并且会从答案中受益

标签: android xml dynamic textview android-scrollview


【解决方案1】:

ScrollView 只能有一个孩子,通常是 LinearLayout。当您调用 scrollview.addView(blah blah) 时,您正在向 ScrollView 添加更多子项,这是不允许的。

有关 ScrollView 的文档,请参阅 here。

--

附带说明,在 StackOverflow 上发布有关您遇到的错误的问题时,请说明:

  • 您遇到的错误(在 Android 中,会在 LogCat 视图中找到)
  • 您的预期结果(您尝试做的事情)
  • 相关代码(在这种情况下,您也应该包含布局 XML 文件 - 虽然 ScrollView 错误绝对是您将遇到的错误中的一个,但它可能不是第一个需要修复,以便继续前进)。

它会帮助所有人,包括将来偶然发现这个问题的人。

【讨论】:

  • 非常感谢您的帮助。感谢您花时间解释如何更好地使用网站,而不仅仅是抱怨。节日快乐
  • 不客气,你也一样。
猜你喜欢
  • 2011-03-13
  • 1970-01-01
  • 1970-01-01
  • 2016-04-14
  • 1970-01-01
  • 2012-05-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多