Viewpage cannot be referenced in XML

Source: Internet
Author: User

Generally, viewpage is referenced in XML as follows:

<? XML version = "1.0" encoding = "UTF-8"?>
<Linearlayout xmlns: Android = "http://schemas.android.com/apk/res/android"
Android: Orientation = "vertical"
Android: layout_width = "fill_parent"
Android: layout_height = "fill_parent"
>
<Android. Support. v4.view. viewpager
Android: Id = "@ + ID/guidepages"
Android: layout_width = "fill_parent"
Android: layout_height = "wrap_content"/>

</Linearlayout>

This is correct, but the runtime can not find Android. Support. v4.view. viewpager, has imported the library file android-support-v4.jar,

 

 

Cause: the source file is not added. The procedure is as follows:

Create a new libs folder, place the android-support-v4.jar under the folder, right-click the folder, and choose build path-> use as source folder to solve the problem.

 

 

Cause analysis: the XML file references the source file.

 

Code attached:

 

Main class:

Import java. util. arraylist;

Import Android. App. activity;
Import Android. OS. Bundle;
Import Android. Support. v4.view. viewpager;
Import Android. View. layoutinflater;
Import Android. View. view;

Public class viewpagetest2 extends activity {
/** Called when the activity is first created .*/

Private viewpager = NULL;
Private arraylist <View> listview = NULL;
@ Override
Public void oncreate (bundle savedinstancestate ){
Super. oncreate (savedinstancestate );
Setcontentview (R. layout. Main );
Initviewpager ();
}
Private void initviewpager (){
Viewpager = (viewpager) findviewbyid (R. Id. guidepages );
Listview = new arraylist <View> ();
Layoutinflater Inflater = getlayoutinflater ();
Listview. Add (Inflater. Inflate (R. layout. One, null ));
Listview. Add (Inflater. Inflate (R. layout. Two, null ));
Listview. Add (Inflater. Inflate (R. layout. Three, null ));
Viewpager. setadapter (New mypageradapter (listview ));
Viewpager. setonpagechangelistener (New mypagerchangelistener ());

}

}

 

 

Mypageradapter class:

 

Import java. util. List;

Import Android. OS. parcelable;
Import Android. Support. v4.view. pageradapter;
Import Android. Support. v4.view. viewpager;
Import Android. View. view;

Public class mypageradapter extends pageradapter {

Private list <View> list;

Public mypageradapter (list <View> List ){
This. List = List;
}

@ Override
Public void destroyitem (view, int index, object arg2 ){
// Todo auto-generated method stub
(Viewpager) view). removeview (list. Get (INDEX ));
}

@ Override
Public void finishupdate (view arg0 ){
// Todo auto-generated method stub

}

@ Override
Public int getcount (){
// Todo auto-generated method stub
Return list. Size ();
}

@ Override
Public object instantiateitem (view, int index ){
(Viewpager) view). addview (list. Get (INDEX), 0 );
Return list. Get (INDEX );
}

@ Override
Public Boolean isviewfromobject (view, object ){
// Todo auto-generated method stub
Return view = (object );
}

@ Override
Public void restorestate (parcelable arg0, classloader arg1 ){
// Todo auto-generated method stub

}

@ Override
Public parcelable savestate (){
// Todo auto-generated method stub
Return NULL;
}

@ Override
Public void startupdate (view arg0 ){
// Todo auto-generated method stub

}

}

 

Mypagerchangelistener class:

Import Android. Support. v4.view. viewpager. onpagechangelistener;

Public class mypagerchangelistener implements onpagechangelistener
{

@ Override
Public void onpagescrollstatechanged (INT arg0)
{
// Todo auto-generated method stub

}

@ Override
Public void onpagescrolled (INT arg0, float arg1, int arg2)
{
// Todo auto-generated method stub

}

@ Override
Public void onpageselected (INT arg0)
{
// Todo auto-generated method stub

}

}

 

Related Article

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.