Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/197.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java TextView不显示日志_Java_Android - Fatal编程技术网

Java TextView不显示日志

Java TextView不显示日志,java,android,Java,Android,好吧,我是android新手,我一直在学习一门课程,但有些事情我不明白 这是LifeCycleT活动 package com.example.killtheviolence.myapplication; import android.app.Activity; import android.os.Bundle; import android.util.Log; import android.widget.TextView; public class LifeCycleT extends Ac

好吧,我是android新手,我一直在学习一门课程,但有些事情我不明白

这是
LifeCycleT
活动

package com.example.killtheviolence.myapplication;

import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.widget.TextView;

public class LifeCycleT extends Activity {
    StringBuilder builde = new StringBuilder();
    TextView textview;

    private void  log(String text) {
        Log.d("LifeCycleT", text);
        builde.append( builde.toString() );
        builde.append("\n");
        textview.setText(builde.toString());
    }

    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        TextView textview = new TextView(this);
        textview.setText(builde.toString());
        setContentView(textview);
    }

    protected void onResume() {
        super.onResume();
        log("resume");
    }

    protected void onPause() {
        super.onPause();
        log("paused");
        if(isFinishing()) {
            log("death");
        }
    }
}
这是从哪里来的?从
列表视图

package com.example.killtheviolence.myapplication;
import android.app.ListActivity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.ListAdapter;
import android.widget.ListView;

public class MainActivity extends ListActivity {
    String prueva[] = {"LifeCycleT","item2","item3","item4",
            "item5 ", "item6 "};

    public void onCreate(Bundle savedInstanceSate){
        super.onCreate(savedInstanceSate);
        setListAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, prueva));
    }

    @Override
    protected void onListItemClick(ListView l, View v, int position, long id) {
        super.onListItemClick(l, v, position, id);
        String gate = prueva[position];

        try {
            Class<?> inst;
            inst = Class.forName("com.example.killtheviolence.myapplication." + gate);
            Intent intent = new Intent(this, inst);
            startActivity(intent);

        } catch (ClassNotFoundException e) {
            e.printStackTrace();
        }
    }
}

为什么我要创建两个
TextView
实例?为什么我要设置两次?为什么它在
文本视图中不显示任何内容?(仅当我在
setText
的参数中编写
“string”
时显示)

修复
onCreate
以将字段参数设置为非本地参数:

@Override
public void onCreate(Bundle savedInstanceState){
    super.onCreate(savedInstanceState);
    textview = new TextView(this); // << This used to be a local var, thats why NPE
    textview.setText(builde.toString());
    setContentView(textview);
}

还请注意,我更改了您的
StringBuilder
,将作为参数传递的文本附加到
log
方法中

问题不在于Android,而在于您使用
StringBuilder
的方式。我想在开始开发Android应用程序之前,你应该再复习一下基础知识。为什么你要手工制作TextView类而不是膨胀布局?因为这是我的第一个Android应用程序,我不知道你在说什么,我只知道java。。。我是在诅咒吗?)
@Override
public void onCreate(Bundle savedInstanceState){
    super.onCreate(savedInstanceState);
    textview = new TextView(this); // << This used to be a local var, thats why NPE
    textview.setText(builde.toString());
    setContentView(textview);
}
private void log(String text) {
    Log.d("LifeCycleT", text);
    builde.append("\n");
    builde.append(text);
    textview.setText(builde.toString());
}