Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/202.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/video/2.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 无法解析方法,尽管方法在我的类中_Android - Fatal编程技术网

Android 无法解析方法,尽管方法在我的类中

Android 无法解析方法,尽管方法在我的类中,android,Android,正如您所见,我在代码中创建了一个名为“fetch”的方法,当我尝试在“onRefresh”方法中调用它时,Android Studio告诉我无法解析“fetch”方法 如果您查看onRefresh方法和fetch方法中的内容,下面是我提供的代码 package com.petersoboyejo.csgoesportsscores; import android.os.Bundle; import android.support.annotation.Nullable; import andr

正如您所见,我在代码中创建了一个名为“fetch”的方法,当我尝试在“onRefresh”方法中调用它时,Android Studio告诉我无法解析“fetch”方法

如果您查看
onRefresh
方法和
fetch
方法中的内容,下面是我提供的代码

package com.petersoboyejo.csgoesportsscores;

import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v4.app.Fragment;
import android.support.v4.widget.DrawerLayout;
import android.support.v4.widget.SwipeRefreshLayout;
import android.support.v7.app.ActionBarActivity;
import android.support.v7.app.ActionBarDrawerToggle;
import android.support.v7.widget.Toolbar;
import android.view.LayoutInflater;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import android.widget.Toast;

import com.android.volley.Response;
import com.android.volley.VolleyError;
import com.android.volley.toolbox.JsonObjectRequest;

import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

import java.util.ArrayList;
import java.util.List;


public class MainActivity extends ActionBarActivity {

    public static MainActivity instance = null;
    private SwipeRefreshLayout swipeContainer;
    private ListView drawerList;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        instance = this;

        setTitle("Matches");

        Toolbar mToolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(mToolbar);
        DrawerLayout mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer);
        ActionBarDrawerToggle mDrawerToggle = new ActionBarDrawerToggle(
                this, mDrawerLayout, mToolbar,
                R.string.open, R.string.close
        );
        mDrawerLayout.setDrawerListener(mDrawerToggle);
        getSupportActionBar().setDisplayHomeAsUpEnabled(true);
        getSupportActionBar().setHomeButtonEnabled(true);
        mDrawerToggle.syncState();

        drawerList = (ListView) findViewById(R.id.left_drawer);
        drawerList.setAdapter(new ArrayAdapter<String>(this, R.layout.drawer_list_item, getResources().getStringArray(R.array.app_sections)));
        // drawerList.setOnItemClickListener(this);


        if(savedInstanceState == null) {
            getSupportFragmentManager().beginTransaction()
                    .add(R.id.container, new ImagesFragment())
                    .commit();
        }



        swipeContainer = (SwipeRefreshLayout) findViewById(R.id.swipeContainer);
        swipeContainer.setOnRefreshListener(new SwipeRefreshLayout.OnRefreshListener() {
            @Override
            public void onRefresh() {

                fetch();

            }
        });

    }


    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_main, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();
        if(id == R.id.action_settings) {
            return true;
        }
        return super.onOptionsItemSelected(item);
    }

    /**
     * A placeholder fragment containing a simple view.
     */
    public static class ImagesFragment extends Fragment {

        private ImageRecordsAdapter mAdapter;

        public ImagesFragment() {
        }

        @Override
        public View onCreateView(LayoutInflater inflater, ViewGroup container,
                                 Bundle savedInstanceState) {
            return inflater.inflate(R.layout.fragment_images, container, false);
        }



        @Override
        public void onActivityCreated(@Nullable Bundle savedInstanceState) {
            super.onActivityCreated(savedInstanceState);

            mAdapter = new ImageRecordsAdapter(getActivity());

            ListView listView = (ListView) getView().findViewById(R.id.list1);
            listView.setAdapter(mAdapter);



            fetch();
        }


        private void fetch() {
            JsonObjectRequest request = new JsonObjectRequest(
                    ("https://api.import.io/store/data/2ac9dccd-71de-4aff-9efb-6643ac8bcc58/_query?input/webpage/url=http%3A%2F%2Fwww.hltv.org%2F%3Fpageid%3D188%26gameid%3D2&_user=65a387f2-10ed-413f-b4fc-b8f012d4c6ca&_apikey=65a387f2-10ed-413f-b4fc-b8f012d4c6ca%3A94W7S%2F461ByRd5Cr3dpu8F3djWvx%2Frk%2FKWKWnAfSxdp%2BWhWJmh0VCK8sZoBi4vnyXLgxIGaEQ%2BO2Vk4IqEs%2FYg%3D%3D"),
                    null,
                    new Response.Listener<JSONObject>() {
                        @Override
                        public void onResponse(JSONObject jsonObject) {
                            try {
                                List<ImageRecord> imageRecords = parse(jsonObject);


                                mAdapter.swapImageRecords(imageRecords);
                            } catch (JSONException e) {
                                Toast.makeText(getActivity(), "Unable to parse data: " + e.getMessage(), Toast.LENGTH_SHORT).show();
                            }
                        }
                    },
                    new Response.ErrorListener() {
                        @Override
                        public void onErrorResponse(VolleyError volleyError) {
                            Toast.makeText(getActivity(), "Unable to fetch data: " + volleyError.getMessage(), Toast.LENGTH_SHORT).show();
                        }
                    });

            VolleyApplication.getInstance().getRequestQueue().add(request);

        }



        private List<ImageRecord> parse(JSONObject json) throws JSONException {
            ArrayList<ImageRecord> records = new ArrayList<ImageRecord>();

            JSONArray jsonImages = json.getJSONArray("results");

            for (int i = 0; i < jsonImages.length(); i++) {
                JSONObject jsonImage = jsonImages.getJSONObject(i);

                String teamoneflag = jsonImage.getString("teamoneflag");
                String teamtwoflag = jsonImage.getString("teamtwoflag");

                String teamone = jsonImage.getString("teamone");
                String teamtwo = jsonImage.getString("teamtwo");
                String event = jsonImage.getString("event");
                String dateplayed = jsonImage.getString("dateplayed");
                String map = jsonImage.getString("map");

                ImageRecord record = new ImageRecord(teamoneflag, teamtwoflag, teamone, teamtwo, event, dateplayed, map);
                records.add(record);
            }

            return records;
        }
    }
}
package com.petersoboyejo.csgoesportscores;
导入android.os.Bundle;
导入android.support.annotation.Nullable;
导入android.support.v4.app.Fragment;
导入android.support.v4.widget.DrawerLayout;
导入android.support.v4.widget.swiperFreshLayout;
导入android.support.v7.app.ActionBarActivity;
导入android.support.v7.app.ActionBarDrawerToggle;
导入android.support.v7.widget.Toolbar;
导入android.view.LayoutInflater;
导入android.view.Menu;
导入android.view.MenuItem;
导入android.view.view;
导入android.view.ViewGroup;
导入android.widget.ArrayAdapter;
导入android.widget.ListView;
导入android.widget.Toast;
导入com.android.volley.Response;
导入com.android.volley.VolleyError;
导入com.android.volley.toolbox.JsonObjectRequest;
导入org.json.JSONArray;
导入org.json.JSONException;
导入org.json.JSONObject;
导入java.util.ArrayList;
导入java.util.List;
公共类MainActivity扩展了ActionBarActivity{
公共静态MainActivity实例=null;
私人swipeContainer;
私有列表视图抽屉列表;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
实例=此;
setTitle(“匹配”);
工具栏mToolbar=(工具栏)findViewById(R.id.Toolbar);
设置支持操作栏(mToolbar);
抽屉布局mDrawerLayout=(抽屉布局)findViewById(R.id.drawer);
ActionBarDrawerToggle mDrawerToggle=新建ActionBarDrawerToggle(
这个,mDrawerLayout,mToolbar,
R.string.open,R.string.close
);
mDrawerLayout.setDrawerListener(mDrawerToggle);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setHomeButtonEnabled(true);
mDrawerToggle.syncState();
抽屉列表=(列表视图)findViewById(R.id.left\u抽屉);
drawerList.setAdapter(新的ArrayAdapter(这个,R.layout.drawer_列表_项,getResources().getStringArray(R.array.app_节));
//drawerList.setonicmclicklistener(this);
如果(savedInstanceState==null){
getSupportFragmentManager().beginTransaction()
.add(R.id.container,新的ImagesFragment())
.commit();
}
swipeContainer=(SwipeRefreshLayout)findViewById(R.id.swipeContainer);
swipeContainer.setOnRefreshListener(新的SwipeRefreshLayout.OnRefreshListener(){
@凌驾
公共void onRefresh(){
fetch();
}
});
}
@凌驾
公共布尔onCreateOptions菜单(菜单){
//为菜单充气;这会将项目添加到操作栏(如果存在)。
getMenuInflater().充气(右菜单菜单菜单主菜单);
返回true;
}
@凌驾
公共布尔值onOptionsItemSelected(菜单项项){
//处理操作栏项目单击此处。操作栏将
//自动处理Home/Up按钮上的点击,只要
//在AndroidManifest.xml中指定父活动时。
int id=item.getItemId();
if(id==R.id.action\u设置){
返回true;
}
返回super.onOptionsItemSelected(项目);
}
/**
*包含简单视图的占位符片段。
*/
公共静态类ImagesFragment扩展了片段{
私人影像记录装置;
公共图像片段(){
}
@凌驾
创建视图上的公共视图(布局、充气机、视图组容器、,
Bundle savedInstanceState){
返回充气机。充气(R.layout.fragment_图像,容器,错误);
}
@凌驾
ActivityCreated上的公共无效(@Nullable Bundle savedinStateCState){
super.onActivityCreated(savedInstanceState);
mAdapter=newImageRecordsAdapter(getActivity());
ListView ListView=(ListView)getView().findViewById(R.id.list1);
setAdapter(mAdapter);
fetch();
}
私有void fetch(){
JsonObjectRequest=新的JsonObjectRequest(
("https://api.import.io/store/data/2ac9dccd-71de-4aff-9efb-6643ac8bcc58/_query?input/webpage/url=http%3A%2F%2Fwww.hltv.org%2F%3Fpageid%3D188%26gameid%3D2&_user=65a387f2-10ed-413f-b4fc-b8f012d4c6ca和(u apikey=65a387f2-10ed-413f-b4fc-b8f012d4c6ca%3A94W7S%2F461ByRd5Cr3dpu8F3djWvx%2Frk%2KWKWKWKWNAFXDP%2BWHWWWWJH0VCK8SZOBI4VNYXXIGAEQ%2BO2Vk4IqEs%2FYg%3D%3D”),
无效的
新的Response.Listener(){
@凌驾
公共void onResponse(JSONObject JSONObject){
试一试{
List imageRecords=parse(jsonObject);
mAdapter.swapImageRecords(图像记录);
}捕获(JSONException e){
Toast.makeText(getActivity(),“无法分析数据:”+e.getMessage(),Toast.LENGTH_SHORT).show();
}
}
},
新的Response.ErrorListener(){
@凌驾
公共错误响应(截击错误截击错误){
Toast.makeText(getActivity(),“无法获取数据:”+volleyError.getMessage(),Toast.LENGTH_SHORT.show();
}
});
截击
((ImagesFragment) MainActivity.this.getSupportFragmentManager().findFragmentById(R.id.container)).fetch();