[mono-android] ExpandableListActivity

Carlo Bolz cb at dm-edv.net
Tue Mar 15 02:33:34 EDT 2011


Thank you.

-----Original Message-----
From: Jonathan Pryor <jpryor at novell.com>
To: monodroid at lists.ximian.com
Date: Mon, 14 Mar 2011 18:31:58 -0400
Subject: Re: [mono-android] ExpandableListActivity


Filed as:

   https://bugzilla.novell.com/show_bug.cgi?id=679564

 - Jon

On Mar 13, 2011, at 4:47 PM, Carlo Bolz wrote:

> Hello guys,
>  
> I try to get this sample work with monodroid: 
> 
http://developer.android.com/resources/samples/ApiDemos/src/com/example/android/apis/view/ExpandableList3.html
>  
> And here is my code:
>  
> using System;
> using Android.App;
> using Android.Content;
> using Android.Runtime;
> using Android.Views;
> using Android.Widget;
> using Android.OS;
> using System.Collections.Generic;
> namespace MonoAndroidApplication2
> {
> [ Activity(Label = "MonoAndroidApplication2", MainLauncher = true )]
> public class Activity1 : ExpandableListActivity
> {
> IExpandableListAdapter mAdapter;
> String NAME = "NAME";
> String IS_EVEN = "IS_EVEN";
> protected override void OnCreate(Bundle bundle)
> {
> base.OnCreate(bundle);
> List< IDictionary <String , object >> groupData = new List< IDictionary < 
string , object >>();
> List< IList<IDictionary< String, object>>> childData = new List < IList < 
IDictionary < string, object>>>();
> for ( int i = 0; i < 20; i++)
> {
> Dictionary< String, object > curGroupMap = new Dictionary < string , 
object >();
> groupData.Add(curGroupMap);
> curGroupMap.Add(NAME, "Group " + i);
> curGroupMap.Add(IS_EVEN, (i % 2 == 0) ? "This group is even" : "This group 
is odd");
> List< IDictionary <String , object >> children = new List< IDictionary < 
string , object >>();
> for ( int j = 0; j < 15; j++)
> {
> Dictionary< String, object > curChildMap = new Dictionary < string , 
object >();
> children.Add(curChildMap);
> curChildMap.Add(NAME, "Child " + j);
> curChildMap.Add(IS_EVEN, (j % 2 == 0) ? "This child is even" : "This child 
is odd");
> }
> childData.Add(children);
> }
> // Set up our adapter
> mAdapter = new SimpleExpandableListAdapter (
> this,
> groupData,
> Android. Resource. Layout.SimpleExpandableListItem1,
> new String[] { NAME, IS_EVEN },
> new int[] { Android.Resource .Id.Text1, Android.Resource.Id.Text2 },
> childData,
> Android. Resource. Layout.SimpleExpandableListItem2,
> new String[] { NAME, IS_EVEN },
> new int[] { Android.Resource .Id.Text1, Android.Resource.Id.Text2 }
> );
> SetListAdapter(mAdapter);
> }
> }
> }
>  
>  
> And this is the exception:
>  
> E/AndroidRuntime( 1275): java.lang.ClassCastException: 
mono.android.runtime.JavaObject
> E/AndroidRuntime( 1275):  at 
android.widget.SimpleExpandableListAdapter.getGroupView(SimpleExpandableListAdapter.java:278)
> E/AndroidRuntime( 1275):  at 
android.widget.ExpandableListConnector.getView(ExpandableListConnector.java:445)
> E/AndroidRuntime( 1275):  at 
android.widget.AbsListView.obtainView(AbsListView.java:1315)
> E/AndroidRuntime( 1275):  at 
android.widget.ListView.makeAndAddView(ListView.java:1727)
> E/AndroidRuntime( 1275):  at 
android.widget.ListView.fillDown(ListView.java:652)
> E/AndroidRuntime( 1275):  at 
android.widget.ListView.fillFromTop(ListView.java:709)
> E/AndroidRuntime( 1275):  at 
android.widget.ListView.layoutChildren(ListView.java:1580)
> E/AndroidRuntime( 1275):  at 
android.widget.AbsListView.onLayout(AbsListView.java:1147)
> E/AndroidRuntime( 1275):  at android.view.View.layout(View.java:7034)
> E/AndroidRuntime( 1275):  at 
android.widget.FrameLayout.onLayout(FrameLayout.java:333)
> E/AndroidRuntime( 1275):  at android.view.View.layout(View.java:7034)
> E/AndroidRuntime( 1275):  at 
android.widget.LinearLayout.setChildFrame(LinearLayout.java:1249)
> E/AndroidRuntime( 1275):  at 
android.widget.LinearLayout.layoutVertical(LinearLayout.java:1125)
> E/AndroidRuntime( 1275):  at 
android.widget.LinearLayout.onLayout(LinearLayout.java:1042)
> E/AndroidRuntime( 1275):  at android.view.View.layout(View.java:7034)
> E/AndroidRuntime( 1275):  at 
android.widget.FrameLayout.onLayout(FrameLayout.java:333)
> E/AndroidRuntime( 1275):  at android.view.View.layout(View.java:7034)
> E/AndroidRuntime( 1275):  at 
android.view.ViewRoot.performTraversals(ViewRoot.java:1049)
> E/AndroidRuntime( 1275):  at 
android.view.ViewRoot.handleMessage(ViewRoot.java:1744)
> E/AndroidRuntime( 1275):  at 
android.os.Handler.dispatchMessage(Handler.java:99)
> E/AndroidRuntime( 1275):  at android.os.Looper.loop(Looper.java:144)
> E/AndroidRuntime( 1275):  at 
android.app.ActivityThread.main(ActivityThread.java:4937)
> E/AndroidRuntime( 1275):  at java.lang.reflect.Method.invokeNative(Native 
Method)
> E/AndroidRuntime( 1275):  at 
java.lang.reflect.Method.invoke(Method.java:521)
> E/AndroidRuntime( 1275):  at 
com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
> E/AndroidRuntime( 1275):  at 
com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
> E/AndroidRuntime( 1275):  at dalvik.system.NativeStart.main(Native Method)
>  
> What I´m doing wrong?
>  
> Help would be appreciated.
>  
> Kind regards,
> Carlo
>  
> _______________________________________________
> Monodroid mailing list
> Monodroid at lists.ximian.com
> 
> UNSUBSCRIBE INFORMATION:
> http://lists.ximian.com/mailman/listinfo/monodroid

_______________________________________________
Monodroid mailing list
Monodroid at lists.ximian.com

UNSUBSCRIBE INFORMATION:
http://lists.ximian.com/mailman/listinfo/monodroid
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.ximian.com/mailman/private/monodroid/attachments/20110315/3f1c78d3/attachment-0001.html 


More information about the Monodroid mailing list