Aynı TextView'ı şişirme ve yeniden kullanma konusunda bir sorunum var.
Aynı metin görüntüsünün üzerine tekrar tekrar yazmayı denemek gibi bir şey ya da bir şey yapamaz mı? İşte Görünümü birden çok kez şişirmek için kullanın
LayoutInflater inflater = LayoutInflater.from(this);
View mainlayout = inflater.inflate(R.layout.days_monday_inflate, null);
View layout_number = inflater.inflate(R.layout.inflate_number, null);
for (int i = 0; i < 10; i++) {
row = new TableRow(this);
number = (TextView) layout_number.findViewById(R.id.Number);
number.setTag(i);
number.setText(Integer.toString(i));
row.addView(number);
}
setContentView(mainlayout);
inflate_number.xml
<TextView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/Number"
android:layout_width="3dp"
android:layout_height="wrap_content"
android:layout_gravity="center|bottom"
android:text="1" />
Bu alıyorum hata im olduğunu ve onun satırda: 51, şudur: Tek bir eklemeye çalışıyoruz row.addView(number);
07-18 20:54:25.124: E/AndroidRuntime(1166): Caused by: java.lang.IllegalStateException: The specified child already has a parent. You must call removeView() on the child's parent first. 07-18 20:54:25.124: E/AndroidRuntime(1166): at android.view.ViewGroup.addViewInner(ViewGroup.java:1970) 07-18 20:54:25.124: E/AndroidRuntime(1166): at android.view.ViewGroup.addView(ViewGroup.java:1865) 07-18 20:54:25.124: E/AndroidRuntime(1166): at android.view.ViewGroup.addView(ViewGroup.java:1822) 07-18 20:54:25.124: E/AndroidRuntime(1166): at android.view.ViewGroup.addView(ViewGroup.java:1802) 07-18 20:54:25.124: E/AndroidRuntime(1166): at com.trainingschedule.days.Monday.onCreate(Monday.java:50) 07-18 20:54:25.124: E/AndroidRuntime(1166): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 07-18 20:54:25.124: E/AndroidRuntime(1166): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
Teşekkürler çok! Yaklaşık 2 saattir bununla oturmak, çirkin olmaktan çekiniyor. Ama şimdi benim uygulama üzerinde gelişmeye devam edebilirsiniz, harika !! – JussT
Unutulmaması gereken bir şey, bu boşluğu şişirdiğinizde geçirmenizdir, çünkü bir görüntüleme grubuna eklemeyi denerseniz, inflate() görünüm grubunu döndürür ve findViewById öğeniz yine de kimliğin ilk örneğini döndürmez. yeni bir tane. – MikeHelland
@mikethematrix Aslında, şimdi null geçmenin yanlış bir yaklaşım olduğunu anlıyorum.Aslında ana düzeni içeriye aktarmalısınız, ancak aynı zamanda düzeni doğrudan dizine eklemeyi engellemek için son parametrede 'false' değerini de girmelisiniz (referans almanıza izin verir). Cevabı güncelledim. – kcoppock