Thursday, July 18, 2013
July 18, 2013
Regular expression for Email validation in java
July 18, 2013
URLEncoder.encoder(string) is depreciated
Tuesday, July 16, 2013
July 16, 2013
Fatal signal 11 (SIGSEGV) at 0xdeadd00d (code=1)
Friday, July 12, 2013
July 12, 2013
Android Alert Dialog
Awesome Dialog
import android.app.Activity;
import android.app.Dialog;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.Window;
import android.widget.Button;
import android.widget.EditText;
public class AwesomeDialog extends Activity {
EditText etSearch;
Button showDialog;
Dialog dialog;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
showDialog = (Button) findViewById(R.id.show_dialog);
showDialog.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
dialog = new Dialog(AwesomeDialog.this,
android.R.style.Theme_Translucent);
dialog.requestWindowFeature(Window.FEATURE_NO_TITLE);
dialog.setCancelable(true);
dialog.setContentView(R.layout.dialog);
Button done = (Button) dialog.findViewById(R.id.done);
done.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
dialog.dismiss();
}
});
dialog.show();
}
});
}
}
package com.mobengineers;
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle" >
<gradient
android:angle="90"
android:endColor="#848484"
android:startColor="#B6B6B6" />
<padding
android:bottom="10dp"
android:left="10dp"
android:right="10dp"
android:top="10dp" />
<stroke
android:width="2dp"
android:color="#000000" />
<corners android:radius="40dp" />
</shape>
dialog.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:background="@drawable/bgdialog"
android:orientation="vertical" >
<TextView
android:id="@+id/tv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentTop="true"
android:layout_centerHorizontal="true"
android:text="Awesome Dialog"
android:textAppearance="?android:attr/textAppearanceMedium" />
<TextView
android:id="@+id/etsearch"
android:layout_width="250dp"
android:layout_height="wrap_content"
android:layout_below="@+id/tv"
android:layout_centerHorizontal="true"
android:layout_margin="10dp" >
</TextView>
<Button
android:id="@+id/done"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_below="@+id/etsearch"
android:layout_centerHorizontal="true"
android:text=" Done" />
</RelativeLayout>
Download Source code here
https://github.com/Pensio/Android-Awesome-Dialog.git
Monday, June 24, 2013
June 24, 2013
Android Jellybean setError fix
public class EditTextErrorJellyBean extends EditText {
public EditTextErrorFixed(Context context) {
super(context);
}
public EditTextErrorJellyBean(Context context, AttributeSet attrs) {
super(context, attrs);
}
public EditTextErrorJellyBean(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
@Override
public boolean onKeyPreIme(int keyCode, KeyEvent event) {
if (TextUtils.isEmpty(getText().toString())
&& keyCode == KeyEvent.KEYCODE_DEL)
return true;
else
return super.onKeyPreIme(keyCode, event);
}
private Drawable lastErrorIcon = null;
@Override
protected void onFocusChanged(boolean focused, int direction,
Rect previouslyFocusedRect) {
super.onFocusChanged(focused, direction, previouslyFocusedRect);
showErrorIconHax(lastErrorIcon);
}
@Override
public void setError(CharSequence error, Drawable icon) {
super.setError(error, icon);
lastErrorIcon = icon;
if (error != null) {
showErrorIconHax(icon);
}
}
private void showErrorIconHax(Drawable icon) {
if (icon == null)
return;
if (android.os.Build.VERSION.SDK_INT != Build.VERSION_CODES.JELLY_BEAN
&& android.os.Build.VERSION.SDK_INT != Build.VERSION_CODES.JELLY_BEAN_MR1)
return;
Class<?> textview = Class.forName("android.widget.TextView");
Field tEditor = textview.getDeclaredField("mEditor");
tEditor.setAccessible(true);
Class<?> editor = Class.forName("android.widget.Editor");
Method privateShowError = editor.getDeclaredMethod("setErrorIcon",
Drawable.class);
privateShowError.setAccessible(true);
privateShowError.invoke(tEditor.get(this), icon);
}
}
public EditTextErrorFixed(Context context) {
super(context);
}
public EditTextErrorJellyBean(Context context, AttributeSet attrs) {
super(context, attrs);
}
public EditTextErrorJellyBean(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
}
@Override
public boolean onKeyPreIme(int keyCode, KeyEvent event) {
if (TextUtils.isEmpty(getText().toString())
&& keyCode == KeyEvent.KEYCODE_DEL)
return true;
else
return super.onKeyPreIme(keyCode, event);
}
private Drawable lastErrorIcon = null;
@Override
protected void onFocusChanged(boolean focused, int direction,
Rect previouslyFocusedRect) {
super.onFocusChanged(focused, direction, previouslyFocusedRect);
showErrorIconHax(lastErrorIcon);
}
@Override
public void setError(CharSequence error, Drawable icon) {
super.setError(error, icon);
lastErrorIcon = icon;
if (error != null) {
showErrorIconHax(icon);
}
}
private void showErrorIconHax(Drawable icon) {
if (icon == null)
return;
if (android.os.Build.VERSION.SDK_INT != Build.VERSION_CODES.JELLY_BEAN
&& android.os.Build.VERSION.SDK_INT != Build.VERSION_CODES.JELLY_BEAN_MR1)
return;
Class<?> textview = Class.forName("android.widget.TextView");
Field tEditor = textview.getDeclaredField("mEditor");
tEditor.setAccessible(true);
Class<?> editor = Class.forName("android.widget.Editor");
Method privateShowError = editor.getDeclaredMethod("setErrorIcon",
Drawable.class);
privateShowError.setAccessible(true);
privateShowError.invoke(tEditor.get(this), icon);
}
}
Monday, June 10, 2013
June 10, 2013
Regular Expression Meta Characters
Regular Expression Description
\d Any digits [0-9]
. Match Any character except new line
^ Match the beginning of line
\ escape next meta character
$ Match the end of line
| Alteration ('0r' statement)
() Grouping
[] Custom character class
\d Any digits [0-9]
\D Any non digit [^0-9]
\s Any white space character [\t\n\x0B\f\r]
\S Any non white space charater
\w Any word character
\W Any non word character
Sunday, June 9, 2013
June 09, 2013
java.lang.IllegalArgumentException: Cannot draw recycled bitmaps
06-10 00:36:34.374: E/AndroidRuntime(2394): java.lang.IllegalArgumentException: Cannot draw recycled bitmaps
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.GLES20Canvas.drawBitmap(GLES20Canvas.java:789)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.GLES20RecordingCanvas.drawBitmap(GLES20RecordingCanvas.java:118)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.graphics.drawable.BitmapDrawable.draw(BitmapDrawable.java:393)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.widget.ImageView.onDraw(ImageView.java:967)
06-10 00:36:34.374: E/AndroidRuntime(2394): at com.pensio.papaya.views.PapayaCircularImageView.onDraw(PapayaCircularImageView.java:47)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.draw(View.java:13707)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12645)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12689)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.draw(View.java:13423)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewGroup.drawChild(ViewGroup.java:2928)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2797)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12643)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12689)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.draw(View.java:13423)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewGroup.drawChild(ViewGroup.java:2928)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2797)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.widget.AbsListView.dispatchDraw(AbsListView.java:2327)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.draw(View.java:13710)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.widget.AbsListView.draw(AbsListView.java:3653)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12645)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12689)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.draw(View.java:13423)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewGroup.drawChild(ViewGroup.java:2928)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2797)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12643)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12689)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.draw(View.java:13423)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewGroup.drawChild(ViewGroup.java:2928)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2797)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12643)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12689)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.draw(View.java:13423)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewGroup.drawChild(ViewGroup.java:2928)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2797)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12643)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12689)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.draw(View.java:13423)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewGroup.drawChild(ViewGroup.java:2928)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2797)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.draw(View.java:13710)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.widget.FrameLayout.draw(FrameLayout.java:467)
06-10 00:36:34.374: E/AndroidRuntime(2394): at com.android.internal.policy.impl.PhoneWindow$DecorView.draw(PhoneWindow.java:2211)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12645)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12689)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.HardwareRenderer$GlRenderer.draw(HardwareRenderer.java:1198)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewRootImpl.draw(ViewRootImpl.java:2173)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:2045)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1854)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:989)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:4351)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.Choreographer$CallbackRecord.run(Choreographer.java:749)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.Choreographer.doCallbacks(Choreographer.java:562)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.Choreographer.doFrame(Choreographer.java:532)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:735)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.os.Handler.handleCallback(Handler.java:725)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.os.Handler.dispatchMessage(Handler.java:92)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.os.Looper.loop(Looper.java:137)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.app.ActivityThread.main(ActivityThread.java:5039)
06-10 00:36:34.374: E/AndroidRuntime(2394): at java.lang.reflect.Method.invokeNative(Native Method)
06-10 00:36:34.374: E/AndroidRuntime(2394): at java.lang.reflect.Method.invoke(Method.java:511)
06-10 00:36:34.374: E/AndroidRuntime(2394): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
06-10 00:36:34.374: E/AndroidRuntime(2394): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
06-10 00:36:34.374: E/AndroidRuntime(2394): at dalvik.system.NativeStart.main(Native Method)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.GLES20Canvas.drawBitmap(GLES20Canvas.java:789)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.GLES20RecordingCanvas.drawBitmap(GLES20RecordingCanvas.java:118)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.graphics.drawable.BitmapDrawable.draw(BitmapDrawable.java:393)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.widget.ImageView.onDraw(ImageView.java:967)
06-10 00:36:34.374: E/AndroidRuntime(2394): at com.pensio.papaya.views.PapayaCircularImageView.onDraw(PapayaCircularImageView.java:47)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.draw(View.java:13707)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12645)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12689)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.draw(View.java:13423)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewGroup.drawChild(ViewGroup.java:2928)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2797)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12643)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12689)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.draw(View.java:13423)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewGroup.drawChild(ViewGroup.java:2928)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2797)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.widget.AbsListView.dispatchDraw(AbsListView.java:2327)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.draw(View.java:13710)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.widget.AbsListView.draw(AbsListView.java:3653)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12645)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12689)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.draw(View.java:13423)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewGroup.drawChild(ViewGroup.java:2928)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2797)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12643)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12689)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.draw(View.java:13423)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewGroup.drawChild(ViewGroup.java:2928)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2797)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12643)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12689)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.draw(View.java:13423)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewGroup.drawChild(ViewGroup.java:2928)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2797)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12643)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12689)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.draw(View.java:13423)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewGroup.drawChild(ViewGroup.java:2928)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewGroup.dispatchDraw(ViewGroup.java:2797)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.draw(View.java:13710)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.widget.FrameLayout.draw(FrameLayout.java:467)
06-10 00:36:34.374: E/AndroidRuntime(2394): at com.android.internal.policy.impl.PhoneWindow$DecorView.draw(PhoneWindow.java:2211)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12645)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.View.getDisplayList(View.java:12689)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.HardwareRenderer$GlRenderer.draw(HardwareRenderer.java:1198)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewRootImpl.draw(ViewRootImpl.java:2173)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:2045)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:1854)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:989)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:4351)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.Choreographer$CallbackRecord.run(Choreographer.java:749)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.Choreographer.doCallbacks(Choreographer.java:562)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.Choreographer.doFrame(Choreographer.java:532)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:735)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.os.Handler.handleCallback(Handler.java:725)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.os.Handler.dispatchMessage(Handler.java:92)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.os.Looper.loop(Looper.java:137)
06-10 00:36:34.374: E/AndroidRuntime(2394): at android.app.ActivityThread.main(ActivityThread.java:5039)
06-10 00:36:34.374: E/AndroidRuntime(2394): at java.lang.reflect.Method.invokeNative(Native Method)
06-10 00:36:34.374: E/AndroidRuntime(2394): at java.lang.reflect.Method.invoke(Method.java:511)
06-10 00:36:34.374: E/AndroidRuntime(2394): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
06-10 00:36:34.374: E/AndroidRuntime(2394): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
06-10 00:36:34.374: E/AndroidRuntime(2394): at dalvik.system.NativeStart.main(Native Method)




