【发布时间】:2016-05-18 16:11:25
【问题描述】:
我目前的问题是我无法更改活动,错误是“System.NullReferenceException:对象引用未设置为对象的实例”
我的第二个问题是制作 ListView 的方法(因为我有一个与之链接的 viewpager,在我的抽屉布局上)。通过这样做,我只有一个按钮 ID,最终添加了 2 个或更多项目“添加、删除等”。所以即使我做了一个 onclick 事件。列表视图上的两个按钮都会出现相同的活动。所以我需要将我添加的项目分开并能够执行不同的功能。
我的活动和声明(不是完整代码)
public class HomepageActivity : FragmentActivity
{
DrawerLayout mDrawerLayout;
List<string> mLeftItems1 = new List<string>();
ArrayAdapter mLeftAdapter1, mLeftAdapter2;
ListView mListView;
mLeftItems1.Add("Add");
mLeftItems1.Add("Delete");
mLeftAdapter1 = new ArrayAdapter(this, Resource.Layout.layout1, Resource.Id.button1, mLeftItems1);
mListView.Adapter = mLeftAdapter1;
button1.Click += delegate
{
StartActivity(typeof(Login));
};
我的 axml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:minWidth="25px"
android:minHeight="25px">
<Button
android:text="Button"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/button1"
android:textColor="@android:color/background_dark"
android:textSize="35dp"
android:clickable="true" />
</LinearLayout>
【问题讨论】:
-
如果没有堆栈跟踪,就有点猜测什么实例为空,但
mListView实例是在哪里创建的? -
您必须使用不同的按钮 ID。
-
@MarkLarter mListView 实例是在公共类中创建的。我编辑了我的帖子并添加了我声明的内容。只有当我添加语句“StartActivity”时才会出现问题
-
@Freddy 但是通过添加一个按钮(因此多了一个按钮 ID)。列表视图的外观看起来就像两个按钮在一起没有分隔线。你能推荐我一个添加两个不同buttonID的好方法吗?
标签: c# android listview button xamarin