Note that there are some explanatory texts on larger screens.

plurals
  1. POHow to Hide and Show Buttons on Alternate Touch Events
    text
    copied!<p>My activity displays images and i want to display two buttons when the user touch the screen, and to disappear these button on next touch.</p> <p>My activity file ImageViewPager.java is as follows:</p> <pre><code>package com.pankajvatsa.testfeet; import java.util.ArrayList; import java.util.List; import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.support.v4.view.ViewPager; import android.view.MotionEvent; import android.view.View; import android.widget.Button; import android.widget.ImageView; import android.widget.RelativeLayout; public class ImageViewPager extends Activity { // Declare Variable int position; Button bWallpaperButton; Button bDownloadButton; RelativeLayout mainLay; int flagForButton = 0; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Set title for the ViewPager setTitle("ViewPager"); // Get the view from view_pager.xml setContentView(R.layout.activity_image_view_pager); mainLay = (RelativeLayout) findViewById(R.id.rl_view_pager); mainLay.setOnTouchListener(new View.OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { // TODO Auto-generated method stub if (event.getAction() == MotionEvent.ACTION_DOWN) { bWallpaperButton.setVisibility(View.VISIBLE); bDownloadButton.setVisibility(View.VISIBLE); return true; } if (event.getAction() == MotionEvent.ACTION_UP) { bWallpaperButton.setVisibility(View.INVISIBLE); bDownloadButton.setVisibility(View.INVISIBLE); return true; } return true; } }); bWallpaperButton = (Button) findViewById(R.id.bSetWallpaper); bDownloadButton = (Button) findViewById(R.id.bSaveToGallery); // Retrieve data from MainActivity on item click event Intent p = getIntent(); position = p.getExtras().getInt("id"); ImageAdapter imageAdapter = new ImageAdapter(this); List&lt;ImageView&gt; images = new ArrayList&lt;ImageView&gt;(); // Retrieve all the images for (int i = 0; i &lt; imageAdapter.getCount(); i++) { ImageView imageView = new ImageView(this); imageView.setImageResource(imageAdapter.mThumbIds[i]); imageView.setScaleType(ImageView.ScaleType.CENTER); images.add(imageView); } // Set the images into ViewPager ImagePagerAdapter pageradapter = new ImagePagerAdapter(images); ViewPager viewpager = (ViewPager) findViewById(R.id.image_pager); viewpager.setAdapter(pageradapter); // Show images following the position viewpager.setCurrentItem(position); } } </code></pre> <p>And my xml file is as follows:</p> <pre><code>&lt;?xml version="1.0" encoding="utf-8"?&gt; &lt;RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:id="@+id/rl_view_pager" android:layout_width="match_parent" android:layout_height="match_parent" android:clickable="true" android:focusable="true" android:focusableInTouchMode="true" &gt; &lt;android.support.v4.view.ViewPager android:id="@+id/image_pager" android:layout_width="wrap_content" android:layout_height="wrap_content" android:clickable="true" android:focusable="true" android:focusableInTouchMode="true" &gt; &lt;/android.support.v4.view.ViewPager&gt; &lt;Button android:id="@+id/bSetWallpaper" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentRight="true" android:text="@string/set_wallpaper" android:visibility="gone" /&gt; &lt;Button android:id="@+id/bSaveToGallery" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentBottom="true" android:layout_alignParentLeft="true" android:text="@string/save_local" android:visibility="gone" /&gt; &lt;/RelativeLayout&gt; </code></pre>
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload