Android Exception “L'enfant spécifié dispose déjà d'un parent...”
Je m obtenir de l'exception que de la suivre. Quelqu'un peut-il m'aider?
06-16 11:32:48.237: ERREUR/AndroidRuntime(9223):
java.lang.IllegalStateException: L'enfant spécifié a déjà un
parent. Vous devez appeler removeView() sur le parent de l'enfant en premier.
06-16 11:32:48.237: ERROR/AndroidRuntime(9223): at android.view.ViewGroup.addViewInner(ViewGroup.java:1970)
06-16 11:32:48.237: ERROR/AndroidRuntime(9223): at android.view.ViewGroup.addView(ViewGroup.java:1865)
06-16 11:32:48.237: ERROR/AndroidRuntime(9223): at android.view.ViewGroup.addView(ViewGroup.java:1822)
06-16 11:32:48.237: ERROR/AndroidRuntime(9223): at android.view.ViewGroup.addView(ViewGroup.java:1802)
06-16 11:32:48.237: ERROR/AndroidRuntime(9223): at com.mVisum_philips.MainECGActivity.popupEvent(MainECGActivity.java:628)
06-16 11:32:48.237: ERROR/AndroidRuntime(9223): at com.mVisum_philips.MainECGActivity$1.onClick(MainECGActivity.java:195)
06-16 11:32:48.237: ERROR/AndroidRuntime(9223): at android.view.View.performClick(View.java:2408)
06-16 11:32:48.237: ERROR/AndroidRuntime(9223): at android.view.View$PerformClick.run(View.java:8816)
06-16 11:32:48.237: ERROR/AndroidRuntime(9223): at android.os.Handler.handleCallback(Handler.java:587)
06-16 11:32:48.237: ERROR/AndroidRuntime(9223): at android.os.Handler.dispatchMessage(Handler.java:92)
06-16 11:32:48.237: ERROR/AndroidRuntime(9223): at android.os.Looper.loop(Looper.java:123)
06-16 11:32:48.237: ERROR/AndroidRuntime(9223): at android.app.ActivityThread.main(ActivityThread.java:4627)
06-16 11:32:48.237: ERROR/AndroidRuntime(9223): at java.lang.reflect.Method.invokeNative(Native Method)
06-16 11:32:48.237: ERROR/AndroidRuntime(9223): at java.lang.reflect.Method.invoke(Method.java:521)
06-16 11:32:48.237: ERROR/AndroidRuntime(9223): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858)
06-16 11:32:48.237: ERROR/AndroidRuntime(9223): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
06-16 11:32:48.237: ERROR/AndroidRuntime(9223): at dalvik.system.NativeStart.main(Native Method)
Code Source pour screen_pop_up.xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:id="@+id/linearLayout1" android:layout_height="wrap_content" android:layout_width="match_parent">
<LinearLayout android:id="@+id/headerLin" android:layout_width="fill_parent" android:layout_height="wrap_content">
<RelativeLayout android:layout_height="wrap_content" android:id="@+id/relativeLayout1" android:layout_width="fill_parent">
<Button android:layout_width="wrap_content" android:id="@+id/button1" android:layout_height="wrap_content" android:text="Done"></Button>
<LinearLayout android:id="@+id/linearLayout2" android:layout_width="wrap_content" android:orientation="horizontal" android:layout_height="wrap_content" android:layout_alignParentRight="true">
<Button android:layout_height="wrap_content" android:background="@drawable/h_scale" android:id="@+id/button2" android:layout_width="wrap_content" android:padding="15sp"></Button>
<Button android:layout_height="wrap_content" android:background="@drawable/v_scale" android:id="@+id/button3" android:layout_width="wrap_content" android:padding="14sp"></Button>
</LinearLayout>
</RelativeLayout>
</LinearLayout>
<LinearLayout android:id="@+id/linLin" android:layout_height="300sp" android:layout_width="250sp">
</LinearLayout>
</LinearLayout>
Code Source où je m obtenir de l'exception est comme suit:
final Dialog myDialog = new Dialog(MainECGActivity.this);
myDialog.setContentView(R.layout.screen_pop_up);
myDialog.setTitle("My Dialog");
LinearLayout myLin = (LinearLayout) myDialog.findViewById(R.id.linLin);
**myLin.addView(ECGField.get(0));**
myDialog.setCancelable(true);
Button button = (Button) myDialog.findViewById(R.id.button1);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
myDialog.dismiss();
}
});
myDialog.show();
J'ai traversé beaucoup de fils ici, mais il me manque quelque chose.
Merci à l'avance.
qu'est-ce que 'ECGField.get(0)' ?
comment aider sans un peu de code..?
comment aider sans un peu de code..?
OriginalL'auteur Balaji Khadake | 2011-06-16
Vous devez vous connecter pour publier un commentaire.
Vue ne peut avoir qu'un seul parent. Le point de vue que vous ajoutez (je suppose re) fait déjà partie d'un autre point de vue de la hiérarchie. Si vraiment vous voulez le réutiliser (je vous suggère probablement pas), alors vous avez à le détacher de son parent dans la hiérarchie vue.
tout ce qui est retourné par ECGField.get(0) est déjà en vue de la hiérarchie.
OriginalL'auteur fleetway76