Android: генератор случайных слов
У меня есть это до сих пор, но я не могу хорошо, что не так, извините за тупой вопрос, я новичок во всем этом. Я также разместил ошибку, это дает мне для дальнейшего использования
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);
}
}
3 ответа
Не устанавливайте массив строк в TextView
кроме того, установите строку только как показано ниже. String array
в TextView
:
quote.setText(randomQuote);
Кавычки - это массив строк, а не только одна строка. Вы хотите использовать
quote.setText(randomQuote);
Если вы хотите установить значение в строковый массив, например, с разбивкой по новым строкам, вы можете сделать следующее:
String quotesString = "";
for(String s : quotes)
quoteString += s + "\n";
quote.setText(quotesString);
Вы передаете массив строк setText
метод TextView
, Это проблема.quotes
объявлен как:
String [] quotes = new String [] {"q1", "q2", "q3"};
Тогда вы написали:
quote.setText(котировки);
Вам нужно пройти только один String
в setText
или:
quote.setText(randomQuote);
или же
quote.setText(котировки [I]); // где i - целое число, обозначающее индекс элемента в
quotes