Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/218.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 如何动态更改文本视图?_Java_Android_Textview - Fatal编程技术网

Java 如何动态更改文本视图?

Java 如何动态更改文本视图?,java,android,textview,Java,Android,Textview,我有一个简单的活动,假设单击按钮后更改TextView的文本。相反,我意外地关闭了应用程序强制。以下是我的文本视图更改代码: package android.GUI; import android.app.Activity; import android.content.Context; import android.content.DialogInterface; import android.content.Intent; import android.media.MediaPlayer;

我有一个简单的活动,假设单击按钮后更改TextView的文本。相反,我意外地关闭了应用程序强制。以下是我的文本视图更改代码:

package android.GUI;

import android.app.Activity;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.text.format.*;
import android.view.Gravity;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.CheckedTextView;
import android.widget.RadioButton;
import android.widget.TextView;
import android.widget.Toast;
import android.*;
import java.text.DateFormat;
import java.util.Date;

public class Shifts extends Activity implements OnClickListener{

Utility UT2 = new Utility();

int i = 2122;

public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.shifts);

final TextView setDate = (TextView)this.findViewById(R.id.shifts);

Button setText = (Button)findViewById(R.id.setdate);
setText.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
    // TODO Auto-generated method stub

    setDate.setText(i);
}
})  ;

}

@Override
public void onClick(View v) {
// TODO Auto-generated method stub

 }}

我猜您的布局缺少id移位的
TextView
。查看logcat输出中的错误:这是NullPointerException吗?

我猜您的布局缺少id移位的
TextView
。在logcat输出中查找错误:是否为NullPointerException?

更改此项:

setDate.setText(i);
为此:

setDate.setText("" + i);
当您调用int时,它被视为您没有的字符串资源id,因此您需要在
文本视图中调用set 2122来更改此设置:

setDate.setText(i);
为此:

setDate.setText("" + i);
当您调用int时,它被视为您没有的字符串资源id,因此您需要在您正在调用的
文本视图中调用set 2122,其中int是一个资源id,您可能没有定义它

你可能是想打电话,像这样:

setDate.setText(i + "");
您正在调用,其中int是一个资源id,您可能还没有定义它

你可能是想打电话,像这样:

setDate.setText(i + "");

在Android中,需要注意的是,许多函数都有一个默认的int参数,而不是对象,因为这就是我们引用对象的方式。
因此,必须将(i+“”)添加到setView()方法中。你不能修改最后一个对象。

在Android中,需要注意的是,许多函数都有一个默认的int参数,而不是对象,因为这是我们引用对象的方式。 因此,必须将(i+“”)添加到setView()方法中。您不能修改最终对象。

更改

setDate.setText(i);
进入

若您将一个整数传递给setText,它将使用重载函数,该函数接受资源ID作为参数。您要做的是传递字符串。我强烈建议使用Integer.toString()而不是像I+''这样的肮脏把戏。

Change

setDate.setText(i);
进入


若您将一个整数传递给setText,它将使用重载函数,该函数接受资源ID作为参数。您要做的是传递字符串。我强烈建议使用Integer.toString()而不是像I+“”这样的肮脏技巧。

是textview移位的名称,完整布局的名称是否也移位?如果您指的是textview id的名称,那么它是“setdate”。textview的名称是否会移位,完整布局的名称是否也会移位?如果您指的是textview id的名称,而不是“setdate”。要添加更多颜色,
setdate。setText(int)
(第一次调用)正试图从id=i的资源加载文本。@dmon-我实际上添加了这一点。谢谢尝试更改为字符串、字符序列,但仍然会意外停止。这可能与TextView是最终版本这一事实有关吗?!你能给我们看一下布局xml吗?另外,当你点击按钮或之前,你会得到FC吗?为了增加一点颜色,
setDate.setText(int)
(第一次调用),试图从ID=i的资源加载文本。@dmon-i实际上添加了这一点。谢谢尝试更改为字符串、字符序列,但仍然会意外停止。这可能与TextView是最终版本这一事实有关吗?!你能给我们看一下布局xml吗?另外,当您单击按钮或之前,您是否会获得FC?我知道您不能修改Final对象,但如果我从Textview中删除Final,我将无法从另一个方法中访问setDate.setText方法。问题是您在该方法中定义了setDate。因此,您应该将其定义为实例成员,然后在oncreate()中对其进行初始化,并在onclick()中对其进行修改我知道你不能修改Final对象,但是如果我从Textview中删除Final,我就无法从另一个方法中访问setDate.setText方法。问题是你已经在该方法中定义了setDate。因此,您应该将其定义为实例成员,然后在oncreate()中对其进行初始化,并在onclick()中对其进行修改