Question

I've implemented horizontal page view with many images. And I'm trying to create a click event on the image.

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.pbase);
    ImageView binfo,bheacno;

    tvHeacno=(TextView) findViewById(R.id.tvheacno);
    heacno=getHeacno();
    tvHeacno.setText(heacno);

    MyPagerAdapter adapter=new MyPagerAdapter();
    ViewPager myPager=(ViewPager)findViewById(R.id.mythreepanelpager);
    myPager.setAdapter(adapter);
    myPager.setCurrentItem(0);

    binfo=(ImageView) findViewById(R.id.ivinfo);
    bheacno=(ImageView) findViewById(R.id.ivheacno);
    binfo.setOnClickListener(this);
    bheacno.setOnClickListener(this);

}

then i've MyPagerAdapter class and the onclik method. it returns null to binfo and hence fails at binfo.setOnClickListener(this) I've done image click before on normal pages successfully. Is it because of horizontal page views? How can I solve this issue??

<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout android:orientation="vertical"
    android:layout_width="match_parent" android:layout_height="match_parent">
    <LinearLayout android:layout_weight="33"
        android:layout_gravity="top" android:orientation="horizontal"
        android:layout_width="match_parent" android:layout_height="match_parent">

        <LinearLayout android:layout_weight="33"
            android:layout_gravity="center_horizontal" android:orientation="vertical"
            android:layout_width="wrap_content" android:layout_height="wrap_content">
            <ImageView android:gravity="center" android:layout_weight="50"
                android:id="@+id/ivinfo" android:layout_width="wrap_content"
                android:layout_gravity="center" android:layout_height="wrap_content"
                android:src="@drawable/information" />
            <TextView android:layout_height="wrap_content"
                android:layout_width="wrap_content" android:textColor="@android:color/black"
                android:layout_weight="50" android:layout_gravity="center"
                android:gravity="center" android:text="   Information  " />
        </LinearLayout>

        <LinearLayout android:layout_weight="33"
            android:layout_gravity="center_horizontal" android:orientation="vertical"
            android:layout_width="wrap_content" android:layout_height="wrap_content">
            <ImageView android:gravity="center" android:layout_weight="50"
                android:id="@+id/ivheacno" android:layout_width="wrap_content"
                android:layout_gravity="center" android:layout_height="wrap_content"
                android:src="@drawable/heacno" />
            <TextView android:layout_height="wrap_content"
                android:layout_width="wrap_content" android:textColor="@android:color/black"
                android:layout_weight="50" android:layout_gravity="center"
                android:gravity="center" android:text="Get HEAC Number" />
        </LinearLayout>


        <LinearLayout android:layout_weight="33"
            android:layout_gravity="center_horizontal" android:orientation="vertical"
            android:layout_width="wrap_content" android:layout_height="wrap_content">
            <ImageView android:gravity="center" android:layout_weight="50"
                android:id="@+id/ivpi" android:layout_width="wrap_content"
                android:layout_gravity="center" android:layout_height="wrap_content"
                android:src="@drawable/pi" />
            <TextView android:layout_height="wrap_content"
                android:layout_width="wrap_content" android:textColor="@android:color/black"
                android:layout_weight="50" android:layout_gravity="center"
                android:gravity="center" android:text="Personal Information" />
        </LinearLayout>
    </LinearLayout>
    <LinearLayout android:layout_weight="33"
        android:layout_gravity="center" android:orientation="horizontal"
        android:layout_width="match_parent" android:layout_height="match_parent">

        <LinearLayout android:layout_weight="33"
            android:layout_gravity="left" android:orientation="vertical"
            android:layout_width="wrap_content" android:layout_height="wrap_content">
            <ImageView android:gravity="center" android:layout_weight="50"
                android:id="@+id/ivassn" android:layout_width="wrap_content"
                android:layout_gravity="center" android:layout_height="wrap_content"
                android:src="@drawable/assn" />
            <TextView android:layout_height="wrap_content"
                android:layout_width="wrap_content" android:textColor="@android:color/black"
                android:layout_weight="50" android:layout_gravity="center"
                android:gravity="center" android:text="Add Social Security Number" />
        </LinearLayout>
        <LinearLayout android:layout_weight="33"
            android:layout_gravity="left" android:orientation="vertical"
            android:layout_width="wrap_content" android:layout_height="wrap_content">
            <ImageView android:gravity="center" android:layout_weight="50"
                android:id="@+id/ivvssn" android:layout_width="wrap_content"
                android:layout_gravity="center" android:layout_height="wrap_content"
                android:src="@drawable/vssn" />
            <TextView android:layout_height="wrap_content"
                android:layout_width="wrap_content" android:textColor="@android:color/black"
                android:layout_weight="50" android:layout_gravity="center"
                android:gravity="center" android:text="View Social Security Number" />
        </LinearLayout>
        <LinearLayout android:layout_weight="33"
            android:layout_gravity="left" android:orientation="vertical"
            android:layout_width="wrap_content" android:layout_height="wrap_content">
            <ImageView android:gravity="center" android:layout_weight="50"
                android:id="@+id/ivdssn" android:layout_width="wrap_content"
                android:layout_gravity="center" android:layout_height="wrap_content"
                android:src="@drawable/dssn" />
            <TextView android:layout_height="wrap_content"
                android:layout_width="wrap_content" android:textColor="@android:color/black"
                android:layout_weight="50" android:layout_gravity="center"
                android:gravity="center" android:text="Delete Social  Security  Number" />
        </LinearLayout>
    </LinearLayout>
    <LinearLayout android:layout_weight="33"
        android:layout_gravity="bottom" android:orientation="horizontal"
        android:layout_width="match_parent" android:layout_height="match_parent">
        <LinearLayout android:layout_weight="33"
            android:layout_gravity="left" android:orientation="vertical"
            android:layout_width="wrap_content" android:layout_height="wrap_content">
            <ImageView android:gravity="center" android:layout_weight="50"
                android:id="@+id/ivali" android:layout_width="wrap_content"
                android:layout_gravity="center" android:layout_height="wrap_content"
                android:src="@drawable/ali" />
            <TextView android:layout_height="wrap_content"
                android:layout_width="wrap_content" android:textColor="@android:color/black"
                android:layout_weight="50" android:layout_gravity="center"
                android:gravity="center" android:text="Add Low Income" />
        </LinearLayout>
        <LinearLayout android:layout_weight="33"
            android:layout_gravity="left" android:orientation="vertical"
            android:layout_width="wrap_content" android:layout_height="wrap_content">
            <ImageView android:gravity="center" android:layout_weight="50"
                android:id="@+id/ivvli" android:layout_width="wrap_content"
                android:layout_gravity="center" android:layout_height="wrap_content"
                android:src="@drawable/vli" />
            <TextView android:layout_height="wrap_content"
                android:layout_width="wrap_content" android:textColor="@android:color/black"
                android:layout_weight="50" android:layout_gravity="center"
                android:gravity="center" android:text="View Low Income" />
        </LinearLayout>
        <LinearLayout android:layout_weight="33"
            android:layout_gravity="left" android:orientation="vertical"
            android:layout_width="wrap_content" android:layout_height="wrap_content">
            <ImageView android:gravity="center" android:layout_weight="50"
                android:id="@+id/ivdli" android:layout_width="wrap_content"
                android:layout_gravity="center" android:layout_height="wrap_content"
                android:src="@drawable/dli" />
            <TextView android:layout_height="wrap_content"
                android:layout_width="wrap_content" android:textColor="@android:color/black"
                android:layout_weight="50" android:layout_gravity="center"
                android:gravity="center" android:text="Delete Low Income" />
        </LinearLayout>
    </LinearLayout>
</LinearLayout>

Was it helpful?

Solution 3

binfo=(ImageView) findViewById(R.id.ivinfo);
bheacno=(ImageView) findViewById(R.id.ivheacno);
binfo.setOnClickListener(this);
bheacno.setOnClickListener(this);

the above code should be in the MyPagerAdapter class. The problem is solved. thanx guys for your help

OTHER TIPS

try this. it may help you.

doneButton.setOnClickListener(new View.OnClickListener() {

            public void onClick(View v) {
                                  Your code 
                                            }
                                   });

Share the layout xml, I think the error is at binfo declaration, might have some hierarchy.

binfo=(ImageView) findViewById(R.id.ivinfo);

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top