如果目标不在main.axml上,则使用什么代替

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

标签: c# android xamarin mobile

所以我试图在我的项目中使用autoCompleteTextView,我的问题是autoCompleteTextView不在 main.axml 中,而是在 pager_item.axml 所以当我使用

ArrayAdapter autoCompleteAdapter = new ArrayAdapter(this, Android.Resource.Layout.SimpleDropDownItem1Line, autoCompleteOptions);

构建是成功的,但是progrem在开始时崩溃了 你调用的对象是空的。

当SetContentView设置为pager_item.axml时,它工作正常,但我不想设置内容视图,因为我仍然需要main.axml。

所以我的问题是当我的autoCompleteTextView不在活动布局上时,我应该使用什么代替这个

1 个答案:

答案 0 :(得分:0)

您可以使用LayoutInflaterpager_item.axml中的MainActivity进行充气。

实施例

Android.Views.View view;
view=LayoutInflater.Inflate(Resource.Layout.pager_item, this, false);
AutoCompleteTextView autotext=view.FindViewById(Resource.Id.at);

修改

  

你能给出一个关于什么是上下文参数的例子吗?

Android中有三种ContextApplicationActivity  和Service

让我们看看Button的构造方法Button (Context context),它需要一个Context参数。如果使用new Button(this);初始化它,则在活动中,this为活动,在服务中,this为服务,在其他类中,您可以使用全局上下文getApplication or getApplicationContext