到目前为止,我有这个但是我不知道什么是错的,抱歉这个愚蠢的问题,我对这一切都是新的。 我还发布了它给我的错误以供进一步参考
package com.example.randomword;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.app.Activity;
import android.os.Bundle;
import android.widget.TextView;
import java.util.Random;
public class MainActivity extends Activity {
String[] quotes = new String[] {"q1", "q2", "q3"};
String randomQuote = quotes[(int) (Math.random() * quotes.length)];
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//Make a new text view passing Activity object
TextView quote = new TextView(R.id.quote);
//Set a text into view
quote.setText(quotes); <--- Error here "The method setText(CharSequence) in the type TextView is not applicable for the arguments (String[])"
//set the view into activity view container
setContentView(quote);
}
}
答案 0 :(得分:2)
不要在TextView
中设置字符串数组,只需将字符串设置为如下所示您无法在String array
中设置TextView
:
quote.setText(randomQuote);
答案 1 :(得分:1)
引号是一个字符串数组,而不仅仅是一个字符串。你想用
quote.setText(randomQuote);
如果您确实要将值设置为字符串数组,例如按新行传播,则可以执行以下操作:
String quotesString = "";
for(String s : quotes)
quoteString += s + "\n";
quote.setText(quotesString);
答案 2 :(得分:0)
您正在将一个字符串数组传递给setText
TextView
方法。这就是问题所在
quotes
声明为:
String [] quotes = new String [] {“q1”,“q2”,“q3”};
然后你写道:
quote.setText(引号);
您只需将String
传递给setText
之一:
quote.setText(randomQuote);
或
quote.setText(引号[I]); //其中i是一个整数,表示
中元素的索引quotes