【问题标题】:show one object of a class in listview C#在列表视图 C# 中显示一个类的对象
【发布时间】:2016-09-19 15:50:36
【问题描述】:

我正在用 c# 中的 xamarin 制作一个应用程序。 这是我的代码:

ArrayAdapter<Skylander> adapter;    
ListView List = FindViewById<ListView>(Resource.Id.LstSkylanders);
List.Adapter = adapter;

我的班级:

class Skylander
        {
            public string Name { get; set; }
            public int Power { get; set; }
            public int Protection { get; set; }
            public int Speed { get; set; }
            public int Luck { get; set; }

            public override string ToString()
            {
                string StringName= "Name: " + Name;
                return StringName;
            }
        };

我的函数将字符串转换为数字:

public int ToNumber(string number)
        {
            int temp;
            try
            {
                temp = Convert.ToInt32(number);
            } catch { temp = 0; };
            return temp;
        }

这就是我将 Skylander 添加到列表中的方式:

Skylander New = new Skylander { Name = Name.Text, Power = ToNumber(Power.Text), Protection = ToNumber(Protection.Text),Speed = ToNumber(Speed.Text), Luck = ToNumber(Luck.Text)};

                adapter.Add(New.ToString());

这是我的输出:

我试图只在我的列表视图中显示名称。 我希望你能帮助我。

丹尼

【问题讨论】:

  • 也许是我,但 ArrayAdapter 是否正在初始化?它看起来不知道要使用哪种布局。 ArrayAdapter adapter = new ArrayAdapter (this, Resource.Layout.TextViewItem, data); ListAdapter = adapter;developer.xamarin.com/recipes/android/data/adapters/…
  • 抱歉,我忘了包含这段代码:adapter = new ArrayAdapter(this, Android.Resource.Layout.SimpleListItem1);
  • 目前显示的是什么?而且,Name 中有值吗?
  • 也许用适配器初始化更新问题中的代码。

标签: c# android class listview xamarin.android


【解决方案1】:

从 Java.Lang.Object 继承,因为 Xamarin 编译器使用 java 版本的 toString,其他所有内容保持不变

 class Skylander: Java.Lang.Object{

    .....

     public override string ToString()
                {
                    string StringName= "Name: " + Name;
                    return StringName;
                }

    }

【讨论】:

  • 谢谢,您的回答有效。但我正在尝试显示名称,当你长跨它时,它会显示所有信息。
猜你喜欢
  • 2017-01-26
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2018-09-22
  • 2014-04-16
  • 1970-01-01
  • 2018-06-06
  • 1970-01-01
相关资源
最近更新 更多