【问题标题】:how set a textView in ADT android? [closed]如何在 ADT android 中设置 textView? [关闭]
【发布时间】:2014-04-03 06:23:34
【问题描述】:

我是 android 的初学者,我在 ADT v22.6.2 中编写了这段代码:

protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    if (savedInstanceState == null) {
        getSupportFragmentManager().beginTransaction()
                .add(R.id.container, new PlaceholderFragment())
                .commit();
    }

    //this is my code
    TextView tbx = (TextView)findViewById(R.id.tbxName);
    tbx.setText("H.H");
}

但是当我启动程序时 -> 不幸的是,应用程序已停止

编辑:

<FrameLayout 
xmlns:android="schemas.android.com/apk/res/android"; xmlns:tools="schemas.android.com/tools"; 
android:id="@+id/container" 
android:layout_width="match_parent"
android:layout_height="match_parent" 
tools:context="com.example.t.MainActivity" 
tools:ignore="MergeRootFrame" > 
<TextView 
android:id="@+id/tbx" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:text="" />
 \</FrameLayout>

请帮助我。 谢谢

【问题讨论】:

  • TextView tbx = (TextView)findViewById(R.id.tbxName); tbx .setText("H.H");会工作
  • 你的TextViewactivity_main 布局内吗?也请发布您的 logcat 错误。
  • 是的,它在activity_main中
  • @user3338477 发布activity_main.xml。可能是错误的 id 引用
  • @user3338477 看看我的回答

标签: android textview adt settext


【解决方案1】:

t 未在任何地方初始化。您只初始化了tbx,而且TextView 有可能属于PlaceholderFragment

编辑:

形成你说你有tbx.setText("H.H");的评论

可能textview属于fragment,你应该在PlaceholderFragment初始化textview

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {

    View rootView = inflater.inflate(R.layout.fragment_main, container, false);
    TextView tbx = (TextView)rootView.findViewById(R.id.tbxName);
    tbx.setText("H.H");
    return rootView;
}

编辑 2:

你的问题与ADT v22.6.2无关。你可能会收到NullPointerException

你引用了错误的 id。

<TextView 
android:id="@+id/tbx" 

改变这个

 TextView tbx = (TextView)findViewById(R.id.tbxName);

 TextView tbx = (TextView)findViewById(R.id.tbx);

【讨论】:

    【解决方案2】:

    您错误地提供了TextView 的ID。

    只需将您的 TextView id 从 R.id.tbxName 更改为 R.id.tbx,就像您在布局中给出的那样。

    代替

    TextView tbx = (TextView)findViewById(R.id.tbxName);
    

    改变它

      TextView tbx = (TextView)findViewById(R.id.tbx);
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-04-18
      • 1970-01-01
      • 2011-04-09
      • 1970-01-01
      • 2018-12-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多