Friday, 3 November 2017

Custom Datepicker Dialog Differend Style


step 1:
activity_main.xml

<RelativeLayout   
 xmlns:android="http://schemas.android.com/apk/res/android"    
xmlns:tools="http://schemas.android.com/tools"    
android:id="@+id/rl"    
android:layout_width="match_parent"    
android:layout_height="match_parent"    
android:padding="10dp"    
tools:context=".MainActivity"    
android:background="#e6eae8"    >
    <Button        
android:id="@+id/btn"        
android:layout_width="wrap_content"       
android:layout_height="wrap_content"        
android:text="Set Date"        />
</RelativeLayout>

step 2:
MainActivity.java

import android.app.DatePickerDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.DatePicker;
import android.widget.EditText;
import android.app.AlertDialog;
import android.app.Dialog;
import android.widget.RelativeLayout;
import android.app.DialogFragment;
import java.util.Calendar;

public class MainActivity extends AppCompatActivity implements View.OnClickListener {

    Button btnDatePicker, btnTimePicker;
    EditText txtDate, txtTime;
    private int mYear, mMonth, mDay, mHour, mMinute,mAMPM;

    @Override    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        final RelativeLayout rl = (RelativeLayout) findViewById(R.id.rl);
        Button btn = (Button) findViewById(R.id.btn);

        btn.setOnClickListener(new View.OnClickListener() {
            @Override           
          public void onClick(View v) {
                // Initialize a new date picker dialog fragment               
        DialogFragment dFragment = new DatePickerFragment();

                // Show the date picker dialog fragment        
        dFragment.show(getFragmentManager(), "Date Picker");
            }
        });
    }

    @Override    public void onClick(View v) {

    }


    public static class DatePickerFragment extends DialogFragment implements DatePickerDialog.OnDateSetListener{

        @Override        public Dialog onCreateDialog(Bundle savedInstanceState){
            final Calendar calendar = Calendar.getInstance();
            int year = calendar.get(Calendar.YEAR);
            int month = calendar.get(Calendar.MONTH);
            int day = calendar.get(Calendar.DAY_OF_MONTH);
            /*                Create a DatePickerDialog using Theme.
                    DatePickerDialog(Context context, int theme, 
                     DatePickerDialog.OnDateSetListener listener,                        
                            int year, int monthOfYear, int dayOfMonth)             */

            // DatePickerDialog THEME_DEVICE_DEFAULT_LIGHT            
                  DatePickerDialog dpd = new DatePickerDialog(getActivity(),
                  AlertDialog.THEME_DEVICE_DEFAULT_LIGHT,this,year,month,day);

            // DatePickerDialog THEME_DEVICE_DEFAULT_DARK            
                    DatePickerDialog dpd2 = new DatePickerDialog(getActivity(),
                    AlertDialog.THEME_DEVICE_DEFAULT_DARK,this,year,month,day);

            // DatePickerDialog THEME_HOLO_LIGHT
                    DatePickerDialog dpd3 = new DatePickerDialog(getActivity(),
                    AlertDialog.THEME_HOLO_LIGHT,this,year,month,day);

            // DatePickerDialog THEME_HOLO_DARK 
                    DatePickerDialog dpd4 = new DatePickerDialog(getActivity(),
                    AlertDialog.THEME_HOLO_DARK,this,year,month,day);

            // DatePickerDialog THEME_TRADITIONAL
                    DatePickerDialog dpd5 = new DatePickerDialog(getActivity(),
                    AlertDialog.THEME_TRADITIONAL,this,year,month,day);

            // Return the DatePickerDialog            
                   return  dpd5;
        }

        public void onDateSet(DatePicker view, int year, int month, int day){
            // Do something with the chosen date        }
    }
}

Saturday, 28 October 2017

Custom Dialog Progressbar

step:1:

style.xml

<style name="Dialog" parent="android:Theme.Holo.Dialog">
    <item name="android:alertDialogStyle">@style/CustomAlertDialogStyle</item>
    <item name="android:windowBackground">@android:color/transparent</item>
    <item name="android:textColorPrimary">#FFFFFF</item>
    <item name="android:backgroundDimEnabled">false</item>
    <item name="android:textColor">#FFFFFF</item>
    <item name="android:textStyle">normal</item>
    <item name="android:textSize">12sp</item>
</style>
<style name="CustomAlertDialogStyle">
    <item name="android:bottomBright">@android:color/transparent</item>
    <item name="android:bottomDark">@android:color/transparent</item>
    <item name="android:bottomMedium">@android:color/transparent</item>
    <item name="android:centerBright">@android:color/transparent</item>
    <item name="android:centerDark">@android:color/transparent</item>
    <item name="android:centerMedium">@android:color/transparent</item>
    <item name="android:fullBright">@android:color/transparent</item>
    <item name="android:fullDark">@android:color/transparent</item>
    <item name="android:topBright">@android:color/transparent</item>
    <item name="android:topDark">@android:color/transparent</item>
</style>

step 2:

MainActivity.java

public class MainActivity extends AppCompatActivity {
 private static int SPLASH_TIME_OUT = 3000;
 ProgressDialog progressDialog;
@Override
 protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);


        progressDialog=new ProgressDialog(ProfileActivity.this,R.style.Dialog);
        progressDialog.show();
 new Handler().postDelayed(new Runnable() {
  @Override
 public void run() {
     progressDialog.dismiss(); }
        }, SPLASH_TIME_OUT);
}}
///////////////////////////////////////////////////////////////

 methed 2:
step 1:
drawable/circular_progress_dialog.xml
<rotate xmlns:android="http://schemas.android.com/apk/res/android"    
android:fromDegrees="270"    
android:toDegrees="270">
    <shape        
android:innerRadiusRatio="2.5"        
android:shape="ring"        
android:thickness="5dp"        
android:useLevel="true">
<!-- this line fixes the issue for lollipop api 21 -->
        <gradient            
android:angle="0"            
android:endColor="#73052a"            
android:startColor="#d7bbc5"            
android:type="sweep"            
android:useLevel="false" />
    </shape>
</rotate>
step 2:

layout/dialog.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"   
 xmlns:app="http://schemas.android.com/apk/res-auto"    
android:orientation="vertical" 
android:layout_width="match_parent"    
android:layout_height="match_parent"    
android:gravity="center">

    <ProgressBar       
 android:layout_width="wrap_content"       
 android:layout_height="wrap_content"        
android:indeterminateDrawable="@drawable/circular_progress_dialog"        />
</LinearLayout>
step 4:
res/style

<style name="Dialog" parent="android:Theme.Holo.Dialog">
    <item name="android:alertDialogStyle">@style/CustomAlertDialogStyle</item>
    <item name="android:windowBackground">@android:color/transparent</item>
    <item name="android:textColorPrimary">#FFFFFF</item>
    <item name="android:backgroundDimEnabled">false</item>
    <item name="android:textColor">#FFFFFF</item>
    <item name="android:textStyle">normal</item>
    <item name="android:textSize">12sp</item>
</style>
<style name="CustomAlertDialogStyle">
    <item name="android:bottomBright">@android:color/transparent</item>
    <item name="android:bottomDark">@android:color/transparent</item>
    <item name="android:bottomMedium">@android:color/transparent</item>
    <item name="android:centerBright">@android:color/transparent</item>
    <item name="android:centerDark">@android:color/transparent</item>
    <item name="android:centerMedium">@android:color/transparent</item>
    <item name="android:fullBright">@android:color/transparent</item>
    <item name="android:fullDark">@android:color/transparent</item>
    <item name="android:topBright">@android:color/transparent</item>
    <item name="android:topDark">@android:color/transparent</item>
</style>


step 5:

import android.app.Dialog;
import android.app.ProgressDialog;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;

public class MainActivity extends AppCompatActivity {

    @Override    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        final Dialog dialog = new Dialog(MainActivity.this,R.style.Dialog);
        dialog.setContentView(R.layout.dialog);
        dialog.show();
    }}

Monday, 23 October 2017

Automatic Cursor focus

step 1:

edittext_style.xml
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
    <solid android:color="@android:color/white"/>

   <stroke 
    android:width="1dp"        
    android:color="@color/colorBlue" />
</shape>

step 2:

edittext_activity.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    
android:orientation="vertical"    
android:id="@+id/layout_entercode"    
android:layout_width="match_parent"    
android:layout_height="match_parent"    
android:background="@android:color/white">
<LinearLayout    
android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="horizontal">
<EditText    
android:id="@+id/code1"    
android:layout_width="wrap_content"    
android:layout_height="40dp"    
android:ems="2"    
android:maxLength="1"    
android:textStyle="bold"    
android:gravity="center"    
android:inputType="number"    
android:textColor="@android:color/black"    
android:background="@drawable/button_style2"/>
<View    
android:layout_width="10dp"    
android:layout_height="match_parent"/>
<EditText    
android:id="@+id/code2"    
android:layout_width="wrap_content"    
android:layout_height="40dp"    
android:ems="2"    
android:maxLength="1"    
android:textStyle="bold"   
android:inputType="number"    
android:textColor="@android:color/black"    
android:gravity="center"    
android:background="@drawable/button_style2"/>
<View    android:layout_width="10dp"    
android:layout_height="match_parent"/>
<EditText    
android:id="@+id/code3"    
android:layout_width="wrap_content"    
android:layout_height="40dp"    
android:ems="2"    
android:inputType="number"    
android:textStyle="bold"    
android:maxLength="1"    
android:gravity="center"    
android:textColor="@android:color/black"    
android:background="@drawable/button_style2"/>
<View    
android:layout_width="10dp"    
android:layout_height="match_parent"/>
<EditText    android:id="@+id/code4"    
android:layout_width="wrap_content"    
android:layout_height="40dp"    
android:ems="2"    
android:inputType="number"    
android:textStyle="bold"    
android:maxLength="1"    
android:gravity="center"    
android:textColor="@android:color/black"    
android:background="@drawable/button_style2"/>

step 3:

EdittextActivity.java

import android.content.Intent;
import android.os.Bundle;
import android.support.annotation.Nullable;
import android.support.v7.app.AppCompatActivity;
import android.text.Editable;
import android.text.TextWatcher;
import android.view.View;
import android.widget.EditText;
import android.widget.ImageView;

public class EnterCodeActivity extends AppCompatActivity {
    EditText editText_code1,editText_code2,editText_code3,editText_code4;
    int size=1;
    @Override    protected void onCreate(@Nullable Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_edittext);

        editText_code1=(EditText)findViewById(R.id.code1);
        editText_code2=(EditText)findViewById(R.id.code2);
        editText_code3=(EditText)findViewById(R.id.code3);
        editText_code4=(EditText)findViewById(R.id.code4);
        ImageView imageView=(ImageView)findViewById(R.id.send);

        editText_code1.addTextChangedListener(new TextWatcher() {

            public void onTextChanged(CharSequence s, int start,int before, int count)
            {
                // TODO Auto-generated method stub                
                 if(editText_code1.getText().toString().length()==size)     //size as per your requirement                {
                    editText_code2.requestFocus();
                }
            }
            @Override           
          public void afterTextChanged(Editable s) {

            }
            public void beforeTextChanged(CharSequence s, int start, int count, int after) {
                // TODO Auto-generated method stub
            }});
       
         editText_code2.addTextChangedListener(new TextWatcher() {

            public void onTextChanged(CharSequence s, int start,int before, int count)
            {
                // TODO Auto-generated method stub               
                 if(editText_code2.getText().toString().length()==size)     //size as per your requirement                {
                    editText_code3.requestFocus();
                }
            }
            @Override            
               public void afterTextChanged(Editable s) {

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

        editText_code3.addTextChangedListener(new TextWatcher() {

            public void onTextChanged(CharSequence s, int start,int before, int count)
            {
                // TODO Auto-generated method stub                
              if(editText_code3.getText().toString().length()==size)     //size as per your requirement                {
                    editText_code4.requestFocus();
                }
            }
            @Override            
          public void afterTextChanged(Editable s) {

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

HOW TO CREATE CIRCLE IMAGE VIEW

Step 1: implementation 'de.hdodenhof:circleimageview:3.0.0' Step 2: <de.hdodenhof.circleimageview.CircleImageView xmlns:ap...