从适配器向模型数组对象添加值

时间:2018-03-28 03:08:06

标签: java android arraylist android-adapter

我有一个<SplitView Name="menu" Grid.Row="1" OpenPaneLength="250" CompactPaneLength="50" DisplayMode="CompactInline"> <SplitView.Pane> <RelativePanel> <ListView ItemContainerStyle="{StaticResource ListViewItemContainerStyle1}"> <ListViewItem Name="homeMenu"> <StackPanel Orientation="Horizontal"> <TextBlock Text="&#xE10F;"/> <TextBlock Text="Home"/> </StackPanel> </ListViewItem> <ListViewItem Name="gamingMenu"> <StackPanel Orientation="Horizontal"> <TextBlock Text="&#xE7FC;"/> <TextBlock Text="Gaming"/> </StackPanel> </ListViewItem> <ListViewItem Name="historyMenu"> <StackPanel Orientation="Horizontal"> <TextBlock Text="&#xE81C;"/> <TextBlock Text="History"/> </StackPanel> </ListViewItem> <ListViewItem Name="likedMenu"> <StackPanel Orientation="Horizontal"> <TextBlock Text="&#xE19F;"/> <TextBlock Text="Liked videos"/> </StackPanel> </ListViewItem> <ListViewItem Name="watchLaterMenu"> <StackPanel Orientation="Horizontal"> <TextBlock Text="&#xE121;"/> <TextBlock Text="Watch later"/> </StackPanel> </ListViewItem> </ListView> </RelativePanel> </SplitView.Pane> <SplitView.Content> <Frame Name="content"/> </SplitView.Content> </SplitView> 数组,它是我的适配器中模型类的对象。我想在添加新值之前清除Specialty[]数组。为此目的重新初始化它。当我尝试添加新值时,我的索引超出范围。有什么办法可以增加模型对象的大小吗?谢谢。 这是我的代码:

Specialty[]

2 个答案:

答案 0 :(得分:1)

  • 您可以使用java.util.Arrays.copyOf(...)调整大小
  • 或由ArrayList
  • 替换
  • 或在添加新值reinitial mgm = new Specialties [1];
  • 之前

答案 1 :(得分:1)

是的,你遇到了这个问题。因为初始化后您无法更改Array尺寸。

 mgm = new Specialties []{};  -> you create an Array with size = 0. You cannot change it later.

我想您应该使用ArrayList代替。