嘿,我正在使用下面的代码作为按下按钮将新文本输入到 textview 中,但是它很迟钝并且在我按下它的一半时间不起作用,但另一半时间它工作正常,有人有什么想法吗?
final Button button = (Button) findViewById(R.id.slumpaovrigt);
button.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Random myRandom5 = new Random();
TextView textovrigt = (TextView) findViewById(R.id.textovrigt);
switch(myRandom5.nextInt() %151) {
case 0:
textovrigt.setText("text 1");
break;
case 1:
textovrigt.setText("text 2");
break;
case 2:
textovrigt.setText("text 3");
break;
case 3:
textovrigt.setText("text 4");
break;
}
}
});
}
}
此外,我使用 4 个不同的 xml 视图,代码相同,但按钮和文本视图不同,文本也不同,每个都包含大约 150 个不同的文本(案例)。
修改了代码,它变得更好了,但仍然有点慢
这是java文件中的完整代码
import java.util.Random;
import android.app.Activity;
import android.content.pm.ActivityInfo;
import android.os.Bundle;
import android.text.method.ScrollingMovementMethod;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
public class Ovrigtskamt extends Activity {
Button slumpaovrigt;
TextView textovrigt;
Random slumpaovrigt2 = new Random();
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.ovrigttext);
super.onCreate(savedInstanceState);
this.setRequestedOrientation(
ActivityInfo.SCREEN_ORIENTATION_PORTRAIT);
slumpaovrigt = (Button) findViewById(R.id.slumpaovrigt);
textovrigt = (TextView)findViewById(R.id.textovrigt);
loadDoc();
}
private void loadDoc(){
String s = "";
for(int x=0;x<=100;x++){
s += "Line: "+String.valueOf(x)+"\n";
}
textovrigt.setMovementMethod(new ScrollingMovementMethod());
textovrigt.setText("Klicka på Slumpa");
slumpaovrigt.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
switch(slumpaovrigt2.nextInt() %4) {
case 0:
case 0:
textovrigt.setText("text 1");
break;
case 1:
textovrigt.setText("text 2");
break;
case 2:
textovrigt.setText("text 3");
break;
case 3:
textovrigt.setText("text 4");
break;
}
}
});
}
}
但正如惠特所说,有 151 种不同的文本