Okhelp.cz

Recepty, články, nápady, programování. Dříve dum-zahrada, finance, internet a know-how.okhelp.cz Pro lepší výsledky hledání používejte i diakritiku.

View overrides onTouchEvent but not performClick


AD MOB


public class Panel extends SurfaceView implements SurfaceHolder.Callback {
//............... code
//............... some code
   /**
     * Process the MotionEvent.
     */
    @Override
    public boolean onTouchEvent(MotionEvent event) {
    	
        synchronized (getHolder()) {
            if (event.getAction() == MotionEvent.ACTION_DOWN) {
            	performClick();
             } else if (event.getAction() == MotionEvent.ACTION_MOVE) {
            	if(_currentGraphic==null)return true;
                
            } else if (event.getAction() == MotionEvent.ACTION_UP) {
            }
            return true;
        }
    }
/////////////////////////////
 @Override
 public boolean performClick() {
  // Calls the super implementation, which generates an AccessibilityEvent
        // and calls the onClick() listener on the view, if any
        super.performClick();

        // Handle the action for the custom click here

        return true;
 }

}


397LW NO topic_id




AD

Další témata ....(Topics)


177

HTC Evo 4G | htc-evo-4g


HTC Evo 4G cena od 6 500 KCZ Kč (únor.2012)
HTC Evo 4G je chytrý telefon běžící na operačním systému Android.
HTC Evo 4G je (22.února2012) třetím nejpoužívanějším chytrým telefonem u programu Sky Map viz tabulka.

EVO je osazen čipsetem Qualcomm QSD8650, který obsahuje Snapdragon Scorpion mikroprocesor taktovaný na 1 GHz a integrovaný grafický čip Adreno 200.

Dále je vybaven 512 MB paměti eDRAM která umožňuje plynulejší běh s Android OS.


EVO má na zadní straně svítilnu, 8 megapixelový fotoaparát schopný nahrávání videa v rozlišení 720p při 30 snímcích za sekundu a duální blesk. EVO má 1,3 megapixelový fotoaparát i na přední straně zařízení, určený pro použití při videohovorech a pro vytvoření portrétních snímků.

Jako mnoho jiných mobilních zařízení s Androidem je i HTC EVO 4G vybaven slotem microSD kromě vestavěné paměti, který umožňuje uživateli rozšíření kapacity paměti. Přístroj podporuje paměťové karty microSD o velikosti až 32 GB. Android verze 2.2 + (Froyo) je k dispozici jako volně šiřitelný OS a může být stažen na SD kartu.

HTC Evo 4G photo pic image
samsung galaxy s2
Zdroj obrázku: wikipedia
365

layout-sw600dp values-sw600dp Android example of use | layout-sw600dp-values-sw600dp-android-example-of-use


Why the app selects data from basic layout folder if smallest width is higher then the number in folder name?
Example 1
layout-sw600dp values-sw600dp (smallest width sw for data usage from this folder is 600dp density independent pixel!!!!!)
Device screen resolution is 1200 x 900 px (pixel) Wow, app to be select data from sw600dp folder! Realy?
DPI of device screen - dot per inch (pixel per inch) is 480 pixel it is wery important number!


  1. App selects smallest dimension of screen. In our case 900 px
    Medium screen have 160 dpi (The density-independent pixel is equivalent to one physical pixel on a 160 dpi screen, which is the baseline density assumed by the system for a "medium" density screen.).


  2. App calculate ratio 480 / 160 = 3 (The conversion of dp units to screen pixels: px = dp * (dpi / 160))


  3. App calculate smallest dimesnion of screen in dp 900 / 3 = 300 dip or dp (density independed pixel).


  4. App selects data from basic values and layout folder because sw600dp is greater than 300dp.





In our case smallest dimension of screen must be at least 1800 real - physical pixels (1800 px / 3 ratio(dpi/160) = 600 dp (dip density independend pixels) to be used data from folders values-sw600dp and layout-sw600dp.


Example 2 see Example 1 abouve
Device: Nexus 7 (2012) selected from Android Studio tool layout editor
Resolution: 800x1280 px
DPI: tvdpi (approximately 213dpi)
Ratio: 1.33 (213 / 160)
Smallest width in px: 800
Convert px to dp: 601.5 (800 / 1.33)
Result:Smallest width is 601.5dp The App to be used data from folders values-sw600dp and layout-sw600dp.
149

Convert a Bitmap to Gray Scale Android example | convert-a-bitmap-to-gray-scale-android-example


Black and white bitmap image pictures, gray scale colormatrix Android example.

public class ApokusActivity extends Activity {

	@Override
	protected void onCreate(Bundle savedInstanceState) {
		super.onCreate(savedInstanceState);
		setContentView(new SampleView(this));
	}

	private static class SampleView extends View {

		// CONSTRUCTOR
		public SampleView(Context context) {
			super(context);
			setFocusable(true);

		}

		@Override
		protected void onDraw(Canvas canvas) {
			Paint paint = new Paint();

			canvas.drawColor(Color.YELLOW);


			// you need to insert a image flower_blue into res/drawable folder

			paint.setFilterBitmap(true);
			Bitmap bitmapOrg = BitmapFactory.decodeResource(getResources(),
					R.drawable.flower_blue);
			canvas.drawBitmap(bitmapOrg, 10, 10, paint);
			int width, height;

		    ColorMatrix cm = new ColorMatrix(
		    		new float[]{
		    		0.5f,0.5f,0.5f,0,0,
		            0.5f,0.5f,0.5f,0,0,
		            0.5f,0.5f,0.5f,0,0,
		            0,0,0,1,0,0,
		            0,0,0,0,1,0
		            });
		    cm.setSaturation(0);
		    ColorMatrixColorFilter f = new ColorMatrixColorFilter(cm);
		    paint.setColorFilter(f);
		    int h = bitmapOrg.getHeight();
			//canvas.drawBitmap(bitmapOrg, 10, 10, paint);
			canvas.drawBitmap(bitmapOrg, 10, 10 + h + 10, paint);

		}

	}
}




gry scale bitmap android
230

Eclipse Log.e println needs a message | eclipse-log-e-println-needs-a-message


Log.e println needs a message error.
E/AndroidRuntime(330): FATAL EXCEPTION: main
java.lang.RuntimeException: Unable to start activity ComponentInfo{b.paint/b.paint.MainActivity}: java.lang.NullPointerException: println needs a message

Try this code:

		// Error
                String s = null;
		Log.e("bla", s); // !!! error Log.e println needs a message error.
                // OK
		String s = null;
		Log.e("bla", s+""); // OK 


154

Create own custom Title Bar TitleBar with a Icon Android example | create-own-custom-title-titlebar-android-example


onCreate in MainActivity.java

    @Override
	protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        requestWindowFeature(Window.FEATURE_CUSTOM_TITLE);
        setContentView(R.layout.main.xml);
        getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.custom_title);
}


You can add to titlebar different Views by xml file.
custom_title.xml

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="//schemas.android.com/apk/res/android" android:id="@+id/screen"
    android:layout_width="fill_parent" android:layout_height="fill_parent"
    android:orientation="vertical">
    <TextView android:id="@+id/left_text"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:text="Some text" />

    <ImageView
        android:id="@+id/imageView1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentTop="true"
        android:layout_alignParentRight="true"
       
        android:src="@drawable/ic_launcher" />
    
</RelativeLayout>





custom-title-titlebar-android


Editace: 2015-02-21 20:04:24
Počet článků v kategorii: 397
Url:view-overrides-ontouchevent-but-not-performclick

AD
11 Share
Share
Tweet