좋아, 빠른 요약. 응용 프로그램은 listView (문자열 배열로 채워짐)로 열리 며 목록의 항목 중 하나를 살짝 두드리면 탭 한 첫 번째 항목과 관련된 항목이있는 다른 listView (문자열 배열로 채워짐)로 이동합니다. 두 번째 listView에서 항목을 살짝 눌러 다른 문자열 배열의 관련 항목이있는 textView를 표시하고 싶습니다. 지금까지 처음 두 listViews 작동하지만 textView 작동하도록 가져올 수 없습니다. 나는 이틀 동안 내 머리를 두드리고 아주 좌절하고있다. 도와 주실 수 있겠습니까?! 여기안드로이드의 ListView에서 선택한 문자열 배열의 문자열로 TextView를 설정하십시오.
<string-array name="topics">
<item>Idioms</item>
<item>Travel</item>
<item>Small Talk</item>
<item>Tips</item>
<item>App Data</item>
</string-array>
<string-array name="idioms">
<item>Cash Chow</item>
<item>No Spring chicken</item>
</string-array>
<string-array name="travel">
<item>Asking for Change</item>
<item>Bus and Train Schedule</item>
</string-array>
<string-array name="idioms_description">
<item>A cash cow is a blah blah blah</item>
<item>No spring chicken means blah blah blah</item>
</string-array>
<string-array name="travel_description">
<item>This is a test for Asking for change</item>
<item>This is a test for Bus and train schedules</item>
</string-array>
그리고 내 getIntent 내가의 setText해야 장소입니다 :
여기 내 문자열 XML 파일입니다. 내가 지금까지 시도한 모든 것이 비참하게 실패했기 때문에 나는 그것을 공란으로 남겼다. 나는 선택된 배열로부터 적절한 문자열을 얻는 방법을 모른다. 나는 문제가 널 예외 오류가 무엇인지 발견
public class DetailLanguagePoints extends Activity{
private int position;
private TextView mLanguagePoint;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.detail_view);
mLanguagePoint = (TextView) findViewById(R.detail.languagepoints);
Bundle extras = getIntent().getExtras();
//int[] arrayIds = new int[]{R.array.idioms, R.array.travel};
position = extras.getInt("listposition");
int[] stringarrayIds = new int[]{R.array.idioms_description, R.array.travel_description};
String[] subTopics = getResources().getStringArray(stringarrayIds[position]);
String description = subTopics[position];
final String TAG = "MyActivity";
Log.d(TAG,description);
mLanguagePoint.setText(description);
}
}
, 나는 setcontentView()
후 findViewById()
를 호출하지 않았다. 나는 그것을했고 그것이 문제를 해결했다, 그것은 지금 일하고있다!! 제안을 주신 모든 분들께 감사드립니다 !!
를 추가하려고? – Manikandan
코드를 조금 변경했습니다. 위의 내용을 확인하십시오. 두 가지 작업을 수행했습니다. 먼저 선택한 listView 항목의 문자열을 LogCat에 인쇄하고 적절한 문자열을 인쇄했습니다. 그러나 listView에서 항목을 클릭하면 여전히 충돌이 발생합니다. 이것은 LogCat E/AndroidRuntime (281)에있는 오류입니다. java.lang.RuntimeException : 활동을 시작할 수 없습니다. ComponentInfo {com.oiapps.everydayenglish/com.oiapps.everydayenglish.DetailLanguagePoints} : java.lang.NullPointerException 아무 생각 나지 않습니다. 그게 원인 일까? – iamluisg