开发者社区> 问答> 正文

创建方法错误时,外部无法使用系统服务

我有一个列表,我需要添加到列表视图中,并且从不同的类中获取的数组列表是我的代码:

public class AdminUserDetails extends AppCompatActivity {
    ListView listView;
    List<String>userlist;

    public static  final String TAG="userdetails";
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_admin_user_details);
        if (android.os.Build.VERSION.SDK_INT > 9)
        {
            StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
            StrictMode.setThreadPolicy(policy);
        }

        listView=findViewById(R.id.list_item2);
        String task= "adminuserdetails";
        BackgroundTask backgroundTask= new BackgroundTask(this);

        backgroundTask.execute(task);
//        ArrayAdapter<String> arrayAdapter =  new ArrayAdapter<String>(AdminUserDetails.this,android.R.layout.simple_list_item_1,userlist);
//        listView.setAdapter(arrayAdapter);
//        ArrayList<String> userlist= new ArrayList<String>(backgroundTask1.arraylist);
//        Log.d(TAG,userlist.toString());


    }
    public void getArrayList(List<String> arrayList){
        userlist= arrayList;
        Log.d(TAG,userlist.toString());
        ArrayAdapter<String> arrayAdapter =  new ArrayAdapter<String>(AdminUserDetails.this,android.R.layout.simple_list_item_1,userlist);
        listView.setAdapter(arrayAdapter);

    }

}

我收到此错误:

E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example.a49ersense, PID: 28978
    java.lang.IllegalStateException: System services not available to Activities before onCreate()
        at android.app.Activity.getSystemService(Activity.java:6636)
        at android.view.LayoutInflater.from(LayoutInflater.java:284)
        at android.widget.ArrayAdapter.<init>(ArrayAdapter.java:216)
        at android.widget.ArrayAdapter.<init>(ArrayAdapter.java:210)
        at android.widget.ArrayAdapter.<init>(ArrayAdapter.java:196)
        at com.example.a49ersense.AdminUserDetails.getArrayList(AdminUserDetails.java:45)
        at com.example.a49ersense.BackgroundTask.onPostExecute(BackgroundTask.java:308)
        at com.example.a49ersense.BackgroundTask.onPostExecute(BackgroundTask.java:28)
        at android.os.AsyncTask.finish(AsyncTask.java:755)
        at android.os.AsyncTask.access$900(AsyncTask.java:192)
        at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:772)
        at android.os.Handler.dispatchMessage(Handler.java:107)
        at android.os.Looper.loop(Looper.java:214)
        at android.app.ActivityThread.main(ActivityThread.java:7356)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:930)

我在arrayadapter遇到错误,请帮助我解决这个错误并指出我做错了什么地方。

展开
收起
垚tutu 2019-12-04 17:07:32 632 0
0 条回答
写回答
取消 提交回答
问答地址:
问答排行榜
最热
最新

相关电子书

更多
《用管控策略设定多账号组织全局访问边界》 立即下载
对象的生命期管理 立即下载
《15分钟打造你自己的小程序》 立即下载