Showing posts with label Android Tricks. Show all posts
Showing posts with label Android Tricks. Show all posts

6 Apr 2016

Get screen dimensions in pixels

If you want the display dimensions in pixels you can use getSize :
Display display = getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
int width = size.x;
int height = size.y;

If you're not in an Activity you can get the default Display via WINDOW_SERVICE:
WindowManager wm = (WindowManager) context.getSystemService(Context.WINDOW_SERVICE);
Display display = wm.getDefaultDisplay();

Before getSize was introduced (in API level 13), you could use the getWidth and getHeight methods that are now deprecated:
Display display = getWindowManager().getDefaultDisplay();
int width = display.getWidth(); // deprecated
int height = display.getHeight(); // deprecated

For the use case you're describing however, a margin/padding in the layout seems more appropriate.
Another ways is: DisplayMetrics.
A structure describing general information about a display, such as its size, density, and font scaling. To access the DisplayMetrics members, initialize an object like this:
DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
Log.d("ApplicationTagName", "Display width in px is " + metrics.widthPixels);

We can use widthPixels to get information for:
"The absolute width of the display in pixels."
Example:

Log.d("ApplicationTagName", "Display width in px is " + metrics.widthPixels);

Read More !

11 Jan 2016

Naming Conventions in java

1. Use full English descriptions for names. Avoid using abbreviations. For example, use names  like firstName,lastName, and middleInitial rather than the shorter versions fName, lName,  and mi.
2. Avoid overly long names (greater than 15 characters). For example, setTheLengthField should  be shortened tosetLength.
3. Avoid names that are very similar or differ only in case. For example, avoid using the names  product, products, and Products in the same program for fear of mixing them up.
For Ex : -
double tax1;       // sales tax rate (example of poor variable name)
double tax2;       // income tax rate (example of poor variable name)
double salesTaxRate;      //no comments required due to
double incomeTaxRate;     //self-documenting variable names
Variable Naming Conventions :-
Choose meaningful names that describe what the variable is being used for. Avoid generic names like number or temp whose purpose is unclear. Compose variable names using mixed case letters starting with a lower case letter. For example, use salesOrder rather than SalesOrder or sales_order.
Use plural names for arrays. For example, use testScores instead of testScore. Exception: for loop  counter variables are often named simply i, j, or k, and declared local to the for loop whenever possible.
for (int i = 0; i < MAX_TEMPERATURE; i++){
   boilingPoint = boilingPoint + 1;
}

Constant Naming Conventions :- 
Use ALL_UPPER_CASE for your named constants, separating words with the underscore character.  For example, use TAX_RATE rather than taxRate or TAXRATE. Avoid using magic numbers in the  code. Magic numbers are actual numbers like 27 that appear in the code that require the reader to figure out what 27 is being used for. Consider using named constants for any number other than 0 and 1. 

Method Naming Conventions :-
1.Compose method names using mixed case letters, beginning with a lower case letter and starting each subsequent word with an upper case letter. 

2.Begin method names with a strong action verb (for example, deposit). If the verb is not  descriptive enough by itself, include a noun (for example, addInterest). Add adjectives if necessary to clarify  the noun (for example, convertToEuroDollars). 

3.Use the prefixes get and set for getter and setter methods. Getter methods merely return the  value of a instance variable; setter methods change the value of a instance variable. For example, use the method names getBalance and setBalance to access or change the instance variable balance. 

4.If the method returns a boolean value, use is or has as the prefix for the method name. For  example, use isOverdrawn or hasCreditLeft for methods that return true or false values. Avoid the  use of the word not in the boolean method name, use the ! operator instead.For example, use  !isOverdrawn instead of isNotOverdrawn.

  

Parameter Naming Conventions :-
With formal parameter names, follow the same naming conventions as with variables, i.e. use mixed case, begin with a lower case letter, and begin each subsequent word with an upper-case letter. 

1.Consider using the prefix a or an with parameter names. This helps make the parameter distinguishable from local and instance variables. Occasionally, with very general purpose methods, the names chosen may be rather generic (for example, aNumber). However, most of the time the parameter names should succinctly describe the type of value being passed into the method. 
Example:- 
public void deposit(long anAccountNumber, double aDepositAmount)
  ... 
}
public boolean isNumberEven(int aValue)
  ... 
}
Read More !

18 Dec 2015

Resetting adb in Android studio

If you are having issues trying to connect to the emulator or see any type of "Connection refused" errors, you may need to reset the Android Debug Bridge. You can go to Tools->Android->Android Device Monitor. Click on the mobile device icon and click on the arrow facing down to find the Reset adb option.
Image 1:-
Amar's Android Tech
 Image 2:-
Amar's Android Tech

Read More !

23 Sept 2015

Pan Card Validation in Android EditText

Sample code for PAN card number validation.
PAN card number is a unique national number issued in India for tax related purposes.

 PAN structure is as follows: AAAAA9999A: First five characters are letters, next 4 numerals, last character letter.

To validate PAN card, call this line of code :-

mEdtPanNumber.addTextChangedListener(new TextWatcher() {

            @Override
            public void onTextChanged(CharSequence s, int start, int before, int count) {
                // TODO Auto-generated method stub
            }

            @Override
            public void afterTextChanged(Editable editable) {
                if (editable.length() == 10) {
                    String s = editable.toString(); // get your editext value here
                    Pattern pattern = Pattern.compile("[a-z]{5}[0-9]{4}[a-z]{1}");
                    Matcher matcher = pattern.matcher(s);
                    // Check if pattern matches
                    if (matcher.matches()) {
                    panNumber = editable.toString();
                } else {
                    Toast.makeText(DetailsActivity.this, getString(R.string.plz_enter_your_correct_pan_num), Toast.LENGTH_LONG).show();
                }
                }
            }

            @Override
            public void beforeTextChanged(CharSequence s, int start, int count,
                                          int after) {
                // TODO Auto-generated method stub
            }
        });

Read More !

22 Jul 2015

How to get sha1 key in android studio

get SHA1 in Android Studio
If you have android studio then it is very very simple. Just create a MapActivity using android studio and after creating it go into google_maps_api.xml and in there there will be a link given in comments. If you paste it in your browser, it will ask a few details to be filled and after that your api will be generated. No need of using keytool and all.
  1. Click on your package and choose New -> Google -> Google Maps Activity
  2. Android Studio redirect you to google_maps_api.xml
And you will see all you need to get google_maps_key
SHA1 Key in Android Studio

Read More !

2 Jul 2015

How to Use Shadow Effect on Android TextView

You can apply Shadow Effect on Android TextView in two ways. 
  1. Programmatically.
  2. Change in the xml layout.

Using Programmatically :-


TextView textview = (TextView) findViewById(R.id.textview2);
textview.setShadowLayer(30, 0, 0, Color.RED);



Using XML Layout :-


<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical"
    android:padding="20dp" >

    <TextView
        android:id="@+id/textview1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:shadowColor="#000"
        android:shadowDx="0"
        android:shadowDy="0"
        android:shadowRadius="50"
        android:text="Text Shadow Example1"
        android:textColor="#FBFBFB"
        android:textSize="28dp"
        android:textStyle="bold" />

    <TextView
        android:id="@+id/textview2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"
        android:text="Text Shadow Example2"
        android:textColor="#FBFBFB"
        android:textSize="28dp"
        android:textStyle="bold" />

</LinearLayout>
In the above XML layout code, the textview1 is given with Shadow effect in the layout. below are the configuration items are
  • android:shadowDx – specifies the X-axis offset of shadow. You can give -/+ values, where -Dx draws a shadow on the left of text and +Dx on the right
  • android:shadowDy – it specifies the Y-axis offset of shadow. -Dy specifies a shadow above the text and +Dy specifies below the text.
  • android:shadowRadius – specifies how much the shadow should be blurred at the edges. Provide a small value if shadow needs to be prominent.
  • android:shadowColor – specifies the shadow color.

Output :-

Shadow In TextView


Read More !

28 Jun 2015

How to add jar file in android studio

File > New Module...
the next screen looks weird, like you are selecting some widget or something but keep it on the first picture and below scroll and find "Import JAR or .AAR Package

then give the path of jar file.


Ok.That's the right way.
Then  Import the module by File -> Project Structure -> Select your project under Modules -> Dependencies -> Click on + to add a module dependancy. select your module and hit ok.that's it.




Read More !

25 Jun 2015

How to import all packages in android studio

Go to File ->Settings ->Editor->Auto Import->Java and make the below things:
Select Insert imports on paste value to All
Do tick mark on Add unambigious imports on the fly option and "Optimize imports on the fly*

Auto import packages in android studio

Read More !

23 Jun 2015

Change or add theme to Android Studio?


For Change :-
File->Settings->Editor->Colors & Fonts-> In scheme name select Darcula and apply to see a awesome dark background theme editor.

For Add :-

You can download new themes from http://ideacolorthemes.org/
Once you have downloaded the .jar file, go to File -> Import Settings... and choose the file downloaded.
Android Studio theme change

Read More !

19 Jun 2015

Where to place Assets folder in Android Studio

Root-Module
--.idea
--app
----bulid
----src
------main
--------assets
----------abc.html
----------AnotherFont.otf
--------java
----------Source code here
--------res
------AndroidManifest.xml
----Build.gradle

In android studio, right click on the app icon, select folder and navigate to the Assets Folder.



On the next screen just click Finish.

And It will create the assets folder in the main target source set.


Read More !

4 Jun 2015

Android Studio shortcuts like Eclipse

Yes, like Eclipse. For Android studio there is a list of shortcuts. Here are a few that I know.
Add unimplemented methods: CTRL + I
Override methods: CTRL + O
Format code: CTRL + ALT + L
Show project: ALT + 1
Show logcat: ALT + 6
Hide project - logcat: SHIFT + ESC

Build: CTRL + F9
Build and Run: CTRL + F10
Collapse all: CTRL + SHIFT + NumPad +
Expand all: CTRL + SHIFT + NumPad -
Find and replace: CTRL + R
Find: CTRL + F

By changing the keymaps settings you can use the same keyboard short cuts as in Eclipse (Or your favourite IDE)
File -> Settings -> KeyMap
Android Studio -> Preferences -> KeyMap (Mac)

change keymaps settings to eclipse so that you can use the short cut keys like in eclipse.
Eclipse shortcut in Android studio


Read More !

2 Apr 2015

Install an APK file in the Android emulator.

Windows:
  1. Execute the emulator (SDK Manager.exe->Tools->Manage AVDs...->New then Start)
  2. Start the console (Windows XP), Run -> type cmd, and move to the platform-tools folder ofSDK directory.
  3. Paste the APK file in the 'platform-tools' folder.

  4. Then type the following command.
    adb install [.apk path]

    Example:
    adb install C:\Users\Name\MyProject\build\xyz.apk

Linux:
In Linux the adb file is found in platform-tools directory under the SDK root directory
Mac:

PATH=$PATH:"adb location"  
Example : PATH=$PATH:/users/jorgesys/eclipse/android-sdk-mac_64/tools
Then run adb.

Read More !

28 Jan 2015

Display Image/icon with radio button in Android


Here is how to display icons on RadioButton on Android :- 


Radio Button Sample

Here you shall see 4 locations where you can put the icons :-
  •  Top
  •  Right
  •  Bottom 
  •  Left. 
The names are :-

  • android:drawableTop
  • android:drawableRight
  • android:drawableBottom 
  • android:drawableLeft.

Hope it helps.
Read More !

20 Apr 2013

HexaDecimal Color Codes List Using in Android Xml File

Used these Hex code to change the color code of Android Activity Layout.....



 Whites/Pastels

Color Name RGB CODE HEX # Sample
Snow 255-250-250 fffafa
Snow 2 238-233-233 eee9e9
Snow 3 205-201-201 cdc9c9
Snow 4 139-137-137 8b8989
Ghost White 248-248-255 f8f8ff
White Smoke 245-245-245 f5f5f5
Gainsboro 220-220-220 dccdc
Floral White 255-250-240 fffaf0
Old Lace 253-245-230 fdf5e6
Linen 240-240-230 faf0e6
Antique White 250-235-215 faebd7
Antique White 2 238-223-204 eedfcc
Antique White 3 205-192-176 cdc0b0
Antique White 4 139-131-120 8b8378
Papaya Whip 255-239-213 ffefd5
Blanched Almond 255-235-205 ffebcd
Bisque 255-228-196 ffe4c4
Bisque 2 238-213-183 eed5b7
Bisque 3 205-183-158 cdb79e
Bisque 4 139-125-107 8b7d6b
Peach Puff 255-218-185 ffdab9
Peach Puff 2 238-203-173 eecbad
Peach Puff 3 205-175-149 cdaf95
Peach Puff 4 139-119-101 8b7765
Navajo White 255-222-173 ffdead
Moccasin 255-228-181 ffe4b5
Cornsilk 255-248-220 fff8dc
Cornsilk 2 238-232-205 eee8dc
Cornsilk 3 205-200-177 cdc8b1
Cornsilk 4 139-136-120 8b8878
Ivory 255-255-240 fffff0
Ivory 2 238-238-224 eeeee0
Ivory 3 205-205-193 cdcdc1
Ivory 4 139-139-131 8b8b83
Lemon Chiffon 255-250-205 fffacd
Seashell 255-245-238 fff5ee
Seashell 2 238-229-222 eee5de
Seashell 3 205-197-191 cdc5bf
Seashell 4 139-134-130 8b8682
Honeydew 240-255-240 f0fff0
Honeydew 2 244-238-224 e0eee0
Honeydew 3 193-205-193 c1cdc1
Honeydew 4 131-139-131 838b83
Mint Cream 245-255-250 f5fffa
Azure 240-255-255 f0ffff
Alice Blue 240-248-255 f0f8ff
Lavender 230-230-250 e6e6fa
Lavender Blush 255-240-245 fff0f5
Misty Rose 255-228-225 ffe4e1
White 255-255-255 ffffff

Grays

Color Name RGB CODE HEX # Sample
Black 0-0-0 000000
Dark Slate Gray 49-79-79 2f4f4f
Dim Gray 105-105-105 696969
Slate Gray 112-138-144 708090
Light Slate Gray 119-136-153 778899
Gray 190-190-190 bebebe
Light Gray 211-211-211 d3d3d3

Blues

Color Name RGB CODE HEX # Sample
Midnight Blue 25-25-112 191970
Navy 0-0-128 000080
Cornflower Blue 100-149-237 6495ed
Dark Slate Blue 72-61-139 483d8b
Slate Blue 106-90-205 6a5acd
Medium Slate Blue 123-104-238 7b68ee
Light Slate Blue 132-112-255 8470ff
Medium Blue 0-0-205 0000cd
Royal Blue 65-105-225 4169e1
Blue 0-0-255 0000ff
Dodger Blue 30-144-255 1e90ff
Deep Sky Blue 0-191-255 00bfff
Sky Blue 135-206-250 87ceeb
Light Sky Blue 135-206-250 87cefa
Steel Blue 70-130-180 4682b4
Light Steel Blue 176-196-222 b0c4de
Light Blue 173-216-230 add8e6
Powder Blue 176-224-230 b0e0e6
Pale Turquoise 175-238-238 afeeee
Dark Turquoise 0-206-209 00ced1
Medium Turquoise 72-209-204 48d1cc
Turquoise 64-224-208 40e0d0
Cyan 0-255-255 00ffff
Light Cyan 224-255-255 e0ffff
Cadet Blue 95-158-160 5f9ea0

Greens

Color Name RGB CODE HEX # Sample
Medium Aquamarine 102-205-170 66cdaa
Aquamarine 127-255-212 7fffd4
Dark Green 0-100-0 006400
Dark Olive Green 85-107-47 556b2f
Dark Sea Green 143-188-143 8fbc8f
Sea Green 46-139-87 2e8b57
Medium Sea Green 60-179-113 3cb371
Light Sea Green 32-178-170 20b2aa
Pale Green 152-251-152 98fb98
Spring Green 0-255-127 00ff7f
Lawn Green 124-252-0 7cfc00
Chartreuse 127-255-0 7fff00
Medium Spring Green 0-250-154 00fa9a
Green Yellow 173-255-47 adff2f
Lime Green 50-205-50 32cd32
Yellow Green 154-205-50 9acd32
Forest Green 34-139-34 228b22
Olive Drab 107-142-35 6b8e23
Dark Khaki 189-183-107 bdb76b
Khaki 240-230-140 f0e68c

Yellow

Color Name RGB CODE HEX # Sample
Pale Goldenrod 238-232-170 eee8aa
Light Goldenrod Yellow 250-250-210 fafad2
Light Yellow 255-255-224 ffffe0
Yellow 255-255-0 ffff00
Gold 255-215-0 ffd700
Light Goldenrod 238-221-130 eedd82
Goldenrod 218-165-32 daa520
Dark Goldenrod 184-134-11 b8860b

Browns

Color Name RGB CODE HEX # Sample
Rosy Brown 188-143-143 bc8f8f
Indian Red 205-92-92 cd5c5c
Saddle Brown 139-69-19 8b4513
Sienna 160-82-45 a0522d
Peru 205-133-63 cd853f
Burlywood 222-184-135 deb887
Beige 245-245-220 f5f5dc
Wheat 245-222-179 f5deb3
Sandy Brown 244-164-96 f4a460
Tan 210-180-140 d2b48c
Chocolate 210-105-30 d2691e
Firebrick 178-34-34 b22222
Brown 165-42-42 a52a2a

Oranges

Color Name RGB CODE HEX # Sample
Dark Salmon 233-150-122 e9967a
Salmon 250-128-114 fa8072
Light Salmon 255-160-122 ffa07a
Orange 255-165-0 ffa500
Dark Orange 255-140-0 ff8c00
Coral 255-127-80 ff7f50
Light Coral 240-128-128 f08080
Tomato 255-99-71 ff6347
Orange Red 255-69-0 ff4500
Red 255-0-0 ff0000

Pinks/Violets

Color Name RGB CODE HEX # Sample
Hot Pink 255-105-180 ff69b4
Deep Pink 255-20-147 ff1493
Pink 255-192-203 ffc0cb
Light Pink 255-182-193 ffb6c1
Pale Violet Red 219-112-147 db7093
Maroon 176-48-96 b03060
Medium Violet Red 199-21-133 c71585
Violet Red 208-32-144 d02090
Violet 238-130-238 ee82ee
Plum 221-160-221 dda0dd
Orchid 218-112-214 da70d6
Medium Orchid 186-85-211 ba55d3
Dark Orchid 153-50-204 9932cc
Dark Violet 148-0-211 9400d3
Blue Violet 138-43-226 8a2be2
Purple 160-32-240 a020f0
Medium Purple 147-112-219 9370db
Thistle 216-191-216 d8bfd8


Read More !