안녕하세요. 쓰레드 안에서 alertdialog 생성하는 소스입니다.
layout xml을 setview시키는 형태인데요
xml 에 textview 만 넣고는정상적으로 돌아가는데
xml에 EditText위젯만 추가하면 오류가 납니다.
혹시 같은 현상 겪으신분들 도움부탁드려요~~
소스와 xml과 에러로그 추가합니다.
소스
new PopupMenu.Option("login", mContext.getResources()
.getDrawable(Res.drawable.ic_menu_rotate_left), new Runnable() {
public void run() {
View layout = View.inflate(mContext, R.layout.favoriteview_add, null);
final AlertDialog.Builder builder_favorAdd = new AlertDialog.Builder(mContext);
builder_favorAdd.setTitle("로그인");
builder_favorAdd.setView(layout);
builder_favorAdd.setPositiveButton("로그인", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
}
});
builder_favorAdd.setNegativeButton("취소", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
}
});
App.get(mContext).getHandler().post(new Runnable() {
public void run() {
builder_favorAdd.show();
}
});
}
}),
xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:id="@+id/layout_root"
android:layout_height="wrap_content"
android:orientation="vertical">
<LinearLayout android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_marginTop="5dip">
<TextView android:layout_width="70dip"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="10dip"
android:textColor="#FFFFFF"
android:textSize="14sp"
android:text="Name"/>
<EditText android:id="@+id/dlgDisplayName"
android:layout_width="wrap_content"
android:layout_height="38dip"
android:textSize="12sp"
android:layout_weight="1"
android:layout_marginLeft="10dip"
android:layout_marginRight="10dip"
android:hint="Name"
/>
</LinearLayout>
<LinearLayout android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView android:layout_width="70dip"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginLeft="10dip"
android:textColor="#FFFFFF"
android:textSize="14sp"
android:text="Phone Number"/>
<EditText android:id="@+id/dlgPhoneNumber"
android:layout_height="38dip"
android:layout_weight="1"
android:layout_width="fill_parent"
android:layout_marginLeft="10dip"
android:layout_marginRight="10dip"
android:inputType="phone"
android:hint="Phone Number"
android:textSize="12sp"/>
</LinearLayout>
</LinearLayout>
로그
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): android.view.InflateException: Binary XML file line #21: Error inflating class android.widget.EditText
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): at android.view.LayoutInflater.createView(LayoutInflater.java:513)
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): at com.android.internal.policy.impl.PhoneLayoutInflater.onCreateView(PhoneLayoutInflater.java:56)
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): at android.view.LayoutInflater.createViewFromTag(LayoutInflater.java:563)
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): at android.view.LayoutInflater.rInflate(LayoutInflater.java:618)
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): at android.view.LayoutInflater.rInflate(LayoutInflater.java:621)
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): at android.view.LayoutInflater.inflate(LayoutInflater.java:407)
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): at android.view.LayoutInflater.inflate(LayoutInflater.java:320)
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): at android.view.LayoutInflater.inflate(LayoutInflater.java:276)
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): at android.view.View.inflate(View.java:8665)
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): at com.cooliris.media.HudLayer$19.run(HudLayer.java:489)
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): at com.cooliris.media.PopupMenu.onTouchEvent(PopupMenu.java:163)
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): at com.cooliris.media.RenderView.processTouchEvent(RenderView.java:725)
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): at com.cooliris.media.RenderView.onDrawFrame(RenderView.java:641)
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1332)
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1116)
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): Caused by: java.lang.reflect.InvocationTargetException
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): at android.widget.EditText.<init>(EditText.java:51)
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): at java.lang.reflect.Constructor.constructNative(Native Method)
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): at java.lang.reflect.Constructor.newInstance(Constructor.java:446)
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): at android.view.LayoutInflater.createView(LayoutInflater.java:500)
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): ... 14 more
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): Caused by: java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare()
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): at android.os.Handler.<init>(Handler.java:121)
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): at android.view.GestureDetector$GestureHandler.<init>(GestureDetector.java:250)
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): at android.view.GestureDetector.<init>(GestureDetector.java:370)
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): at android.view.GestureDetector.<init>(GestureDetector.java:347)
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): at android.view.GestureDetector.<init>(GestureDetector.java:331)
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): at android.widget.TextView.<init>(TextView.java:981)
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): at android.widget.EditText.<init>(EditText.java:55)
01-26 18:10:07.860: ERROR/AndroidRuntime(10455): ... 18 more