我碰到一个问题,我似乎无法理解为什么会发生这种情况。我的项目中使用支持v4库(版本21.0.3)中有几个片段。在这些片段中,我使用getContext()方法来示例Toasts。 但昨天suddently所有getContext在我的项目打破了,并且Android Studio在编译时显示了26个错误。下面是打破无法解析android.support.v4.app.Fragment(版本21.0.3)中的方法getContext()Android Studio
package com.example.project.ui.fragment;
import android.app.Activity;
import android.os.Bundle;
import android.support.v4.app.Fragment;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.AdapterView;
import android.widget.ArrayAdapter;
import android.widget.ListView;
import com.example.project.R;
import java.util.ArrayList;
public class ListSizesFragment extends Fragment {
private ArrayList<String> sizes;
private ListView listViewSizes;
private ArrayAdapter<String> adapter;
public ListSizesFragment() {
// Required empty public constructor
}
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.fragment_list_sizes, container, false);
}
@Override
public void onViewCreated(View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState);
listViewSizes = (ListView) view.findViewById(R.id.listViewBlogs);
sizes = new ArrayList<>(MAX_SIZES);
sizes.addAll(getValueSizes())
adapter = new ArrayAdapter<String>(getContext(), android.R.layout.simple_list_item_1, sizes);
listViewSizes.setAdapter(adapter);
listViewSizes.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
String resultSize = adapter.getItem(position);
Toast.makeText(getContext(),"result :"+resultSize,Toast.LENGHT_SHORT).show(); getActivity().setResult(Activity.RESULT_OK);
getActivity().finish();
}
});
}
}
从我可以在Android文档中看到的多exemples之一(http://developer.android.com/reference/android/support/v4/app/Fragment.html#getContext())的getContext是支持-V4片段的方法,所以我坚持在试图找出什么问题。
在该项目中,我也有一个ViewPager,我不能有addOnPageListener方法相同的问题。
我试过了重建项目和使用Gradle文件重新同步项目,但无济于事。
谢谢。
因此,我正在寻找本地历史和build.gradle依赖关系编译'com.android.support:support-v4:+'已更改为编译'com.android.support:support-v4:21.0。 3'昨天当这个问题发生。然而,试图使用最新版本回来给我另一个错误:_Error:(3)错误检索项的父项:找不到匹配给定名称的资源'android:TextAppearance.Material.Widget.Button.Inverse'._ – NlsGladiatus
如果我无意中翻转了我的build.gradle文件,我该如何“解开”它们?我应该编辑哪些文件以更改支持库版本? – calvillo
@calvillo你的模块的build.gradle,特别是'compile“com.android.support ...'那里 – laalto