Hab das probiert egal wie ich es wende und drehe es kommt immer irgend nen Fehler. Hat das so schonmal jemand gemacht?
Beiträge von Kamil
-
-
Ah ok wusste ich nicht...Werde ich probieren und mich dann nochmal melden.
-
DDMS? Ich denke du meinst den log? Falls nicht klär mich bitte auf
Der log gibt folgendes ausCode
Alles anzeigen08-26 10:12:23.821: ERROR/AndroidRuntime(199): Uncaught handler: thread main exiting due to uncaught exception 08-26 10:12:23.830: INFO/ActivityThread(207): Publishing provider com.android.email.provider: com.android.email.provider.EmailProvider 08-26 10:12:23.840: DEBUG/dalvikvm(29): GC freed 2 objects / 48 bytes in 164ms 08-26 10:12:23.840: ERROR/AndroidRuntime(199): java.lang.RuntimeException: Unable to start activity ComponentInfo{hello.world/hello.world.HelloWorldActivity}: java.lang.ClassCastException: android.widget.Spinner 08-26 10:12:23.840: ERROR/AndroidRuntime(199): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2496) 08-26 10:12:23.840: ERROR/AndroidRuntime(199): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2512) 08-26 10:12:23.840: ERROR/AndroidRuntime(199): at android.app.ActivityThread.access$2200(ActivityThread.java:119) 08-26 10:12:23.840: ERROR/AndroidRuntime(199): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1863) 08-26 10:12:23.840: ERROR/AndroidRuntime(199): at android.os.Handler.dispatchMessage(Handler.java:99) 08-26 10:12:23.840: ERROR/AndroidRuntime(199): at android.os.Looper.loop(Looper.java:123) 08-26 10:12:23.840: ERROR/AndroidRuntime(199): at android.app.ActivityThread.main(ActivityThread.java:4363) 08-26 10:12:23.840: ERROR/AndroidRuntime(199): at java.lang.reflect.Method.invokeNative(Native Method) 08-26 10:12:23.840: ERROR/AndroidRuntime(199): at java.lang.reflect.Method.invoke(Method.java:521) 08-26 10:12:23.840: ERROR/AndroidRuntime(199): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:860) 08-26 10:12:23.840: ERROR/AndroidRuntime(199): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618) 08-26 10:12:23.840: ERROR/AndroidRuntime(199): at dalvik.system.NativeStart.main(Native Method) 08-26 10:12:23.840: ERROR/AndroidRuntime(199): Caused by: java.lang.ClassCastException: android.widget.Spinner 08-26 10:12:23.840: ERROR/AndroidRuntime(199): at hello.world.HelloWorldActivity.processData(HelloWorldActivity.java:149) 08-26 10:12:23.840: ERROR/AndroidRuntime(199): at hello.world.HelloWorldActivity.onCreate(HelloWorldActivity.java:63) 08-26 10:12:23.840: ERROR/AndroidRuntime(199): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047) 08-26 10:12:23.840: ERROR/AndroidRuntime(199): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2459) 08-26 10:12:23.840: ERROR/AndroidRuntime(199): ... 11 more
paar zeilen tiefer -
Hi, also im Debugger zeigt er "Source not found". In der App selber steht "The application HelloWorld (process hello.world) has stopped unexpectly. Please try again".
Die ID ist korrekt. Ich hoffe das reicht erstmal.
Danke
Kamil -
-
Hallo Community, ich habe ein Spinner mit Namen der mir bei Auswahl die Details dazu in ein Textview ausgibt. Nun habe ich das Problem das er schon beim laden den 1. Wert auswählt und das OnSelected ausführt was er natürlich nicht tun soll denn es soll standartmässig nichts ausgewählt sein.
Wie genau stelle ich das an?funktioniert leider nicht...auf einer anderen Seite habe ich folgende Lösung gefunden weiss aber nicht wie ich diese anwenden soll.
Java
Alles anzeigenclass NoDefaultSpinner extends Spinner { public NoDefaultSpinner(Context context) { super(context); } public NoDefaultSpinner(Context context, AttributeSet attrs) { super(context, attrs); } public NoDefaultSpinner(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); } @Override public void setAdapter(SpinnerAdapter orig ) { final SpinnerAdapter adapter = newProxy(orig); super.setAdapter(adapter); try { final Method m = AdapterView.class.getDeclaredMethod("setNextSelectedPositionInt",int.class); m.setAccessible(true); m.invoke(this,-1); final Method n = AdapterView.class.getDeclaredMethod("setSelectedPositionInt",int.class); n.setAccessible(true); n.invoke(this,-1); } catch( Exception e ) { throw new RuntimeException(e); } } protected SpinnerAdapter newProxy(SpinnerAdapter obj) { return (SpinnerAdapter) java.lang.reflect.Proxy.newProxyInstance( obj.getClass().getClassLoader(), new Class[]{SpinnerAdapter.class}, new SpinnerAdapterProxy(obj)); } /** * Intercepts getView() to display the prompt if position < 0 */ protected class SpinnerAdapterProxy implements InvocationHandler { protected SpinnerAdapter obj; protected Method getView; protected SpinnerAdapterProxy(SpinnerAdapter obj) { this.obj = obj; try { this.getView = SpinnerAdapter.class.getMethod("getView",int.class,View.class,ViewGroup.class); } catch( Exception e ) { throw new RuntimeException(e); } } public Object invoke(Object proxy, Method m, Object[] args) throws Throwable { try { return m.equals(getView) && (Integer)(args[0])<0 ? getView((Integer)args[0],(View)args[1],(ViewGroup)args[2]) : m.invoke(obj, args); } catch (InvocationTargetException e) { throw e.getTargetException(); } catch (Exception e) { throw new RuntimeException(e); } } protected View getView(int position, View convertView, ViewGroup parent) throws IllegalAccessException { if( position<0 ) { final TextView v = (TextView) ((LayoutInflater)getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE)).inflate(android.R.layout.simple_spinner_item,parent,false); v.setText(getPrompt()); return v; } return obj.getView(position,convertView,parent); } } }
Wie mach ich das nun am elegantesten? Und wie nutze ich die Klasse mit meinem Spinner?
Vielen Dank im Voraus
Kamil