안녕하세요. 배열 9개를 만들고, 그 배열의 주소를 랜덤함수로 하나 정한 다음,
지정된 배열을 setText로 textView에 넣고, 그 넣은 값을 출력하려고 합니다.
아래는 소스코드인데요. 문법상 오류는 발견되지 않았는데 논리적으로 문제가 있는건지 계속 수행이 되지 않네요.
<XML>
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:layout_marginTop="450dp"
android:id="@+id/textView1"/>
<JAVA>
String selected_text = null;
int index = getRandomMath(8, 0);
String[] text = new String[9];
text[0] = "adsf";
text[1] = "asgdf"; ... 이렇게 8번까지 있습니다.
selected_text = text[index];
TextView textView1 = (TextView)findViewById(R.id.textView1);
textView1.setText(selected_text);
// 위처럼 textView1이라는 아이디를 XML 파일에서 @+id/textView1 로 출력하려고 했어요.
아래는 랜덤함수 입니다.
private int getRandomMath(int max, int offset){
int i = (int)(Math.random() * max) + offset;
return i;
}
어떤 부분이 문제일까요?
확실한 건 전체 주석을 다시 치고 하면 프로그램은 원래대로 돌아가서.. 지금 작성된 이 부분 중 하나가 오류를 발생시키는 겁니다.
XML text="Hello~"라고 넣으면 제대로 출력이 되네요..
logcat으로 확인해보니 배열에 저장된 값을 id로 넘겨주는 저 3줄에서 문제가 발생하는 것 같습니다. 해결이 안되네요..
ㅎㅎ 해결했습니다. 2시간 정도 고민했는데.. 질문 올리고나서 해결하네요 ㅋㅋㅋ
읽어주신 분들께 감사드립니다.