Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Android Error inflating class SwipeRefreshLayout

Tags:

I am working on an App right now that uses 3 tabs with a fragment in each and I am trying to implement SwipeRefreshLayout in each of these fragments. I believe that I have created this correctly, but I continue to get the errors:

android.view.InflateException: Binary XML file line #1: Error inflating class SwipeRefreshLayout Caused by: java.lang.ClassNotFoundException: Didn't find class "android.view.SwipeRefreshLayout" on path: DexPathList[[zip file "/data/app/com.ryan.brooks.fropllc.frop.app-1.apk"],nativeLibraryDirectories=[/data/app-lib/com.ryan.brooks.fropllc.frop.app-1, /vendor/lib, /system/lib]]     at com.ryan.brooks.fropllc.frop.app.whatsGoingOnFragment.onCreateView(whatsGoingOnFragment.java:23) 

Now I have absolutely no idea what is causing this. If anybody could help me that would be tremendously appreciated.

Here is my fragment layout where I am implementing the SwipeRefreshLayout:

<SwipeRefreshLayout     android:layout_width="match_parent"     android:layout_height="match_parent"     android:id="@+id/swipe_refresh_whats_going_on">      <ScrollView         android:layout_width="match_parent"         android:layout_height="match_parent"         android:background="#343434"></ScrollView>  </SwipeRefreshLayout> 

And here is my fragment class where I am calling the SwipeRefreshLayout.

public class WhatsGoingOnFragment extends Fragment {      private SwipeRefreshLayout swipeLayout;      @Override     public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {         // Inflate the layout for this fragment         View view = inflater.inflate(R.layout.whats_going_on_fragment, container, false);          // Retrieve the SwipeRefreshLayout and ListView instances         swipeLayout = (SwipeRefreshLayout) view.findViewById(R.id.swipe_refresh_whats_going_on);          // Set the color scheme of the SwipeRefreshLayout by providing 4 color resource ids         swipeLayout.setColorScheme(                 android.R.color.holo_blue_bright,                 android.R.color.holo_green_light,                 android.R.color.holo_orange_light,                 android.R.color.holo_red_light);          return view;     } } 

Both the layouts and class structure are the exact same for all 3 fragments just with id name changes. I really have no clue what is going wrong here. Again any help is greatly appreciated!

like image 320
Rbro112 Avatar asked Jun 04 '14 04:06

Rbro112


1 Answers

You need to use a full package name for SwipeRefreshLayout:

<android.support.v4.widget.SwipeRefreshLayout     android:layout_width="match_parent"     android:layout_height="match_parent"     tools:context="com.ryan.brooks.fropllc.frop.app.whatsGoingOnFragment"     android:id="@+id/swipe_refresh_whats_going_on">      <ScrollView         android:layout_width="match_parent"         android:layout_height="match_parent"         android:background="#343434"></ScrollView>  </android.support.v4.widget.SwipeRefreshLayout> 
like image 188
Vikky Avatar answered Oct 05 '22 05:10

Vikky