【问题标题】:Is it possible to replace existing textView with new dynamic textView programmatically?是否可以以编程方式用新的动态 textView 替换现有的 textView?
【发布时间】:2018-07-11 12:08:59
【问题描述】:

我需要将 xml 布局文件中已经定义的 textview 替换为在我的 Activity 类文件中以编程方式创建的动态 textview。

【问题讨论】:

  • 为什么要替换textView?请详细说明。
  • 为什么要替换TextView?为什么不替换文本或其任何属性?
  • @Udit stackoverflow.com/questions/51190630/… 我需要进行这样的设计,我尝试将图像和文本组合在一个可绘制对象中,但我无法做到,所以我尝试将 textview 替换为我的自定义文本视图。

标签: android android-layout textview


【解决方案1】:

您不需要替换它,只需从textView(来自Java)获取特定属性并将它们设置在text_view(来自XML)上。

例如:

text_view.setText(textView.getText().toString())
text_view.setColor(textView.getColor())
...
text_view.setAnything(textView.getAnything())

也许对你有帮助

【讨论】:

  • 什么是setAnything? :D
  • @tahsinRupam 它将某物分配给某物。 :)
  • @Rohit5k2 但是你必须使用setSomething(),对吧?
  • 大家可以帮我设计这个布局吗stackoverflow.com/questions/51190630/…
  • 我去为你模拟一个结果。等几分钟。 Android Studio 已开放...
【解决方案2】:

我不明白你为什么要这样做,但无论如何都会安排步骤:

  1. 获取对包含 ViewGroup 的 TextView 的引用
  2. 使用 TextView 参考调用 removeView。
  3. 用新的 TextView 调用 addView。

    TextView old = (TextView) findViewById(R.id.old_text_view) LinearLayout 布局 = (LinearLayout) findViewById(R.id.container) TextView new = new TextView()

    layout.removeView(旧); layout.addView(new, position);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-11-14
    • 2019-12-16
    • 2017-07-09
    • 1970-01-01
    • 1970-01-01
    • 2016-01-30
    • 1970-01-01
    • 2011-03-09
    相关资源
    最近更新 更多