Rumah > Java > javaTutorial > teks badan

Bagaimana untuk Membetulkan Ralat \'Anak Yang Ditentukan Sudah Mempunyai Ibu Bapa\' dalam Android?

DDD
Lepaskan: 2024-10-31 21:20:02
asal
897 orang telah melayarinya

How to Fix the

Android: Menangani Ralat "Anak Yang Ditentukan Sudah Ada Ibu Bapa"

Apabila cuba menukar antara reka letak berulang kali, anda mungkin menghadapi ralat menyatakan , "Anak yang ditentukan sudah mempunyai ibu bapa. Anda mesti memanggil removeView() pada ibu bapa kanak-kanak itu terlebih dahulu." Ini timbul apabila anda cuba menambah paparan pada reka letak tanpa mengalih keluarnya daripada induk sebelumnya.

Pencetus Ralat

Ralat biasanya berlaku apabila menukar antara reka letak yang mengandungi pandangan yang sama. Sebagai contoh, anda mungkin mempunyai TextView (tv) dalam kedua-dua susun atur. Apabila anda bertukar kepada reka letak kedua, ralat muncul apabila anda cuba menambah tv padanya semula tanpa mengalih keluarnya daripada reka letak pertama.

Kod Reka Letak

Reka letak anda kod, seperti yang diberikan dalam soalan, cuba menambah tv pada LinearLayout:

<code class="java">// TEXTVIEW
layout.addView(tv);</code>
Salin selepas log masuk

Walau bagaimanapun, semasa larian berikutnya, tv sudah mempunyai induk (LinearLayout daripada susun atur sebelumnya), yang membawa kepada ralat.

Penyelesaian

Untuk menyelesaikan isu ini, anda perlu mengalih keluar tv daripada induknya sebelum menambahkannya pada yang baharu. Ini boleh dicapai dengan:

<code class="java">// TEXTVIEW
if (tv.getParent() != null) {
    ((ViewGroup) tv.getParent()).removeView(tv); // <- fix
}
layout.addView(tv);</code>
Salin selepas log masuk

Kod ini menyemak sama ada tv sudah mempunyai induk, dan jika ada, ia mengalih keluarnya daripada induk itu sebelum menambahkannya pada LinearLayout semasa.

Atas ialah kandungan terperinci Bagaimana untuk Membetulkan Ralat \'Anak Yang Ditentukan Sudah Mempunyai Ibu Bapa\' dalam Android?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!