2012-09-18 6 views
-1

내 활동에 대한 listview를 클릭하면 alertdialog를 표시하고 싶습니다. alertdialog를 표시하는 코드가 있지만 내 코드에 문제가 있음을 알고 있습니다. 그것을 고치기 위해, 경고는 내가 원하는 것처럼 보이지 않았지만 DDMS에서 내가 원하는 것을 얻습니다. 여기 내 코드 :listview를 클릭하면 경고 대화 상자를 표시하는 방법

@Override 
protected void onListItemClick(ListView l, View v, int position, long id) { 

new bike_type_dao(responsetype).view_bike_type(); 

final Entity_Brand brand = adapterBrand.getItem(position); 

LayoutInflater li = (LayoutInflater) this 
     .getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
View view = li.inflate(R.layout.listview_activity, null, false); 
AlertDialog.Builder builder = new AlertDialog.Builder(this); 
builder.setTitle(brand.getBrand_name()); 
builder.setView(view); 

ListView listtype = (ListView) view.findViewById(R.id.list_sepeda); 
listtype.setOnClickListener((OnClickListener) this); 
listtype.setAdapter(new ArrayAdapter<Entity_Bike_Type>(this, 
     android.R.layout.simple_list_item_1, arrayList)); 
listtype.setOnItemClickListener((OnItemClickListener) this); 

builder.create().show(); 

} 

감사합니다.

11월 9일에서 18일까지 : 52 : 07.819 : E/HttpResponse에 (25,866) { "결과"1 "데이터": [{ "0"

내 로그 고양이 이잖아 "1 ","id_brand ":"1 ","1 ":"Polygon ","brand_name ":"Polygon "}, {"0 ":"2 ","id_brand ":"2 ","1 ":"United Bike ","brand_name ":"United Bike "}, {"0 ":"3 ","id_brand ":"3 ","1 ":"WimCycle ","brand_name ":"WimCycle "}]} 09 (25866) : threadid = 1 : 캐치되지 않은 예외 (그룹 = 0x40018578)로 스레드 종료 중 09-18 11 : 52 : 09.679 : E/AndroidRuntime (25866) : 치명적인 예외 : 메인 09-18 11 : 52 : 09.679 : E/AndroidRuntime (25866) : java.lang .ClassCastException : com.wilis.hellotabwidget.Tab_Brand_ListView_Activity 09-18 11 : 52 : 09.679 : E/AndroidRuntime (25866) : com.wilis.hellotabwidget.Tab_Brand_ListView_Activity.onListItemClick (Tab_Brand_ListView_Activity.java:158) 09-18 11 : 52 : 09.679 : E/AndroidRuntime (25866) : android.app.ListActivity $ 2.onItemClick (ListActivity.java:319) 09-18 11 : 52 : 09.679 : E/AndroidRuntime (25866) : android.widget.AdapterView .performItemClick (AdapterView.java:284) 09-18 11 : 52 : 09.679 : E/AndroidRuntime (25866) : android.widget.ListView.performItemClick (ListView.java:3755) 09-18 11 : 52 : 09.679 : E/AndroidRuntime (25866) : android.widget.AbsListView $ PerformClick.run (AbsListView.java:1964) 09-18 11 : 52 : 09.679 : E/AndroidRuntime (25866) : android.os.Handler.handleCallback (Handler.java:587) 09/18 11 : 52 : 09.679 : E/AndroidRuntime (25866) : android.os.Handler.dispatchMessage (Handler.java:92) 09-18 11 : 52 : 09.679 : E/AndroidRuntime (25866) : android .os.Looper.loop (Looper.java:130) 09-18 11 : 52 : 09.679 : E/AndroidRuntime (25866) : android.app.ActivityThread.main (ActivityThread.java:3687) 09-18 11 : 52 : 09.679 : E/AndroidRuntime (25866) : java.lang.reflect.Method.invokeNative (기본 메소드) 09-18 11 : 52 : 09.679 : E/AndroidRuntime (25866) : java.lang.reflect. Method.invoke (Method.java:507) 09-18 11 : 52 : 09.679 : E/AndroidRuntime (25866) : com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run (ZygoteInit.java:867) 09 -18 11 : 52 : 09.679 : E/AndroidRuntime (25866) : com.android.internal.os.ZygoteInit.main (ZygoteInit.java:625) 09-18 11 : 52 : 09.679 : E/AndroidRuntime (25866) : a t "dalvik.system.NativeStart.main (네이티브 메서드) 09-18 11 : 52 : 09.809 : E/HttpResponse (25866) : {"결과 ": 1,"데이터 ": [{"0 ":"1 " "id_type": "1", "1": "Cross Country (XC)", "type_name": "Cross Country (XC)"}, { "0": "2", "id_type": "2" "1": "BMX", "type_name": "BMX"}, { "0": "3", "id_type": "3", "1": "Free Ride (FR)", "type_name" "Free Ride (FR)"}, { "0": "4", "id_type": "4", "1": "DownHill (DH)", "type_name": "DownHill (DH) "0": "5", "id_type": "5", "1": "DirtJump (DJ)", "type_name": "DirtJump (DJ)"}, { "0": "6", "id_type ":"6 ","1 ":"도로 자전거 ","type_name에 ":"도로 자전거는 "}]}

+0

뭐죠 라인 158에 전화 할 위치

@SuppressLint("NewApi") public class ChangeLanguageDialog extends DialogFragment{ public Dialog onCreateDialog(Bundle savedInstanceState) { AlertDialog.Builder builder = new AlertDialog.Builder(getActivity()); builder.setMessage(R.string.app_name) .setPositiveButton(R.string.save, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int id) { } }) .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() { public void onClick(DialogInterface dialog, int id) { } }); return builder.create(); } } 

다음이를 넣어 당신의 활동. 해당 목록을 여기에 붙여 넣으십시오. –

+0

listtype.setAdapter (new ArrayAdapter (this, \t \t \t \t android.R.layout.simple_list_item_1, arrayList) –

답변

7

이 5 월 당신에게 도움이 여기에

listview.setOnItemClickListener(new OnItemClickListener(){ 

     @Override 
     public void onItemClick(AdapterView<?> parent, View view, 
       int position, long rowId) { 


      AlertDialog.Builder adb = new AlertDialog.Builder(
        MainActivity.this); 
        adb.setTitle("List"); 
        adb.setMessage(" selected Item is=" 
        +parent.getItemAtPosition(position)); 
        adb.setPositiveButton("Ok", null); 
        adb.show();  

     } 

    }); 

MainActivity을 변경합니다.클래스 이름이

+0

그것도 작동하지 않는다, 내가 무슨 말을했는지 –

+0

그냥 setOnItemClickListener를 사용하고 Dialog를 언급대로 경고한다. –

-1

Android Developers에서이다 :이 클래스를 생성
먼저 대화

ChangeLanguageDialog dialog = new ChangeLanguageDialog(); 
FragmentManager fm = getFragmentManager(); 
dialog.show(fm, "language"); 
관련 문제