Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/186.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 如果所有都在MainActivity中,但不在两个类中,则代码可以工作_Android_Class_Android Arrayadapter_Android Spinner - Fatal编程技术网

Android 如果所有都在MainActivity中,但不在两个类中,则代码可以工作

Android 如果所有都在MainActivity中,但不在两个类中,则代码可以工作,android,class,android-arrayadapter,android-spinner,Android,Class,Android Arrayadapter,Android Spinner,我有两门课:MainActivity和WordBase。代码不起作用,但当我将其从WordBase类复制到MainActivity时,它就起作用了。 这是两门课 public class WordsBase { private Activity context=null; private View myView; // Type of words that user wants to search private final String Noun="Nomen",Adjectives="A

我有两门课:MainActivity和WordBase。代码不起作用,但当我将其从WordBase类复制到MainActivity时,它就起作用了。 这是两门课

public class WordsBase {
private Activity context=null;
private View myView;

//  Type of words that user wants to search
private final String Noun="Nomen",Adjectives="Adjectives",Verbs="Verben";


 public WordsBase(Activity context)
     {
        this.context= context;
    }

     // creat the list menu that lets User to choose what type of words wants to search
    public void create () {

       LayoutInflater inflater = context.getLayoutInflater();
        myView = inflater.inflate(R.layout.words_base, null);
       Spinner sp1 = (Spinner) myView.findViewById(R.id.spinner1);

       List<String> arr = new ArrayList<String>();
       arr.add(Noun);
       arr.add(Adjectives);
       arr.add(Verbs);

       ArrayAdapter<String> menu_Adapter = new ArrayAdapter<String>(context,android.R.layout.simple_list_item_1,arr);
       sp1.setAdapter(menu_Adapter);

   }

}

您忘记了将视图添加到主活动

您可以像这样返回视图

公共视图创建(){

。。。 返回myView; }


在main活动中,您可以看到外部relativelayout.addview(menu.create())

显示不起作用的代码。setContentView(newWordsBase(this.create());公共视图创建(){LayoutInflater inflater=context.getLayoutInflater();myView=inflater.inflate(R.layout.words_base,null);微调器sp1=(微调器)myView.findViewById(R.id.Spinner);List arr=new ArrayList();arr.add(名词);arr.add(形容词);arr.add(动词);ArrayAdapter menu_Adapter=新的ArrayAdapter(上下文,android.R.layout.simple_list_item_1,arr);sp1.setAdapter(menu_Adapter);返回myView;}
public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.words_base);
    WordsBase menu =new WordsBase(this);
    menu.create();

   }
}