Android 在两种不同的方法中使用变量
我试图在我的android应用程序中使用jsoup库,我想在description类中获取str1的值,并在MyAdapter类中将其用作items.addnew Itemstr1,R.drawable.flag_one;我不明白,非常感谢您的帮助Android 在两种不同的方法中使用变量,android,Android,我试图在我的android应用程序中使用jsoup库,我想在description类中获取str1的值,并在MyAdapter类中将其用作items.addnew Itemstr1,R.drawable.flag_one;我不明白,非常感谢您的帮助 public class HomeFragment extends Fragment { // URL Address String url = "http://www.livescore.com"; public HomeFragment(){
public class HomeFragment extends Fragment {
// URL Address
String url = "http://www.livescore.com";
public HomeFragment(){}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
final View rootView = inflater.inflate(R.layout.fragment_home, container, false);
getOverFlowMenu();
GridView gridView = (GridView)rootView.findViewById(R.id.gridview);
gridView.setAdapter(new MyAdapter(rootView.getContext()));
new Description();
return rootView;
}
private void getOverFlowMenu() {
}
//Description async task
class Description extends AsyncTask<Void, Void, Void>{
String desc;
@Override
protected Void doInBackground(Void... voids) {
try{
// Connect to the web site
Document document = Jsoup.connect(url).get();
Element content = document
.body().getElementsByClass("kubrick-info__title").first();
// Locate the content attribute
desc = content.text();
}catch (IOException e){
e.printStackTrace();
}
return null;
}
@Override
protected void onPostExecute(Void result){
// Set description into TextView
String str1 = desc;
}
}
private class MyAdapter extends BaseAdapter
{
private List<Item> items = new ArrayList<Item>();
private LayoutInflater inflater;
public MyAdapter(Context context)
{
inflater = LayoutInflater.from(context);
items.add(new Item(str1, R.drawable.flag_one));
items.add(new Item("teams", R.drawable.flag_two));
}
@Override
public int getCount() {
return items.size();
}
@Override
public Object getItem(int i)
{
return items.get(i);
}
@Override
public long getItemId(int i)
{
return items.get(i).drawableId;
}
}能否在公共类HomeFragment extends Fragment的正下方的顶部声明静态字符串str1=?然后在onPostExecute方法中:
其思想是,如果在顶部声明字符串,那么它将在整个HomeFragment类中可见。从哪里获得异常?您能提供更多信息吗?当我运行代码时,它会拾取第一个str1,因此在onPostExecute方法中没有显示设置适配器的任何内容。
@Override
protected void onPostExecute(Void result){
// Set description into TextView
str1 = desc;
}