Introduction

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed ut dui id lectus consequat viverra in eget tortor. Fusce dictum odio gravida turpis pharetra, eget ultrices ligula semper. Morbi massa nisl, venenatis semper erat a, dignissim tristique metus. Nam hendrerit eu turpis at maximus. Vivamus sit amet elit at quam tempus venenatis auctor sit amet ipsum. Morbi rutrum, urna a sagittis condimentum, sem purus mattis dui, in consequat lectus magna at tellus. Quisque erat diam, placerat eget purus eget, dapibus tincidunt justo.

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed ut dui id lectus consequat viverra in eget tortor. Fusce dictum odio gravida turpis pharetra, eget ultrices ligula semper. Morbi massa nisl, venenatis semper erat a, dignissim tristique metus. Nam hendrerit eu turpis at maximus. Vivamus sit amet elit at quam tempus venenatis auctor sit amet ipsum. Morbi rutrum, urna a sagittis condimentum, sem purus mattis dui, in consequat lectus magna at tellus. Quisque erat diam, placerat eget purus eget, dapibus tincidunt justo.

Prerequisites

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed ut dui id lectus consequat viverra in eget tortor. Fusce dictum odio gravida turpis pharetra, eget ultrices ligula semper. Morbi massa nisl, venenatis semper erat a, dignissim tristique metus. Nam hendrerit eu turpis at maximus. Vivamus sit amet elit at quam tempus venenatis auctor sit amet ipsum. Morbi rutrum, urna a sagittis condimentum, sem purus mattis dui, in consequat lectus magna at tellus. Quisque erat diam, placerat eget purus eget, dapibus tincidunt justo.

Getting Started

Vivamus sit amet elit at quam tempus venenatis auctor sit amet ipsum. Morbi rutrum, urna a sagittis condimentum, sem purus mattis dui, in consequat lectus magna at tellus. Quisque erat diam, placerat eget purus eget, dapibus tincidunt justo.

        import android.view.MenuItem;

        import com.xwray.passwordview.PasswordView;

        import static android.support.v7.app.AppCompatDelegate.MODE_NIGHT_NO;
        import static android.support.v7.app.AppCompatDelegate.MODE_NIGHT_YES;
      

Let's look at this a little deeper.

Create

Vivamus sit amet elit at quam tempus venenatis auctor sit amet ipsum. Morbi rutrum, urna a sagittis condimentum, sem purus mattis dui, in consequat lectus magna at tellus. Quisque erat diam, placerat eget purus eget, dapibus tincidunt justo.

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);

        PasswordView passwordView = (PasswordView) findViewById(R.id.password);
        TextInputLayout passwordViewTIL = (TextInputLayout) findViewById(R.id.password_til);

        PasswordView passwordViewWithStrikeThrough = (PasswordView) findViewById(R.id.password_strike);
        TextInputLayout passwordViewWithStrikeThroughTIL = (TextInputLayout) findViewById(R.id.password_strike_til);

        Typeface roboto = Typeface.createFromAsset(getAssets(), "fonts/Roboto-Regular.ttf");
        passwordView.setTypeface(roboto);
        passwordViewTIL.setTypeface(roboto);
        passwordViewWithStrikeThrough.setTypeface(roboto);
        passwordViewWithStrikeThroughTIL.setTypeface(roboto);
    }
    
Create Options Menu

Vivamus sit amet elit at quam tempus venenatis auctor sit amet ipsum. Morbi rutrum, urna a sagittis condimentum, sem purus mattis dui, in consequat lectus magna at tellus. Quisque erat diam, placerat eget purus eget, dapibus tincidunt justo.

    @Override public boolean onCreateOptionsMenu(Menu menu) {
        MenuInflater inflater = getMenuInflater();
        inflater.inflate(R.menu.main_menu, menu);
        return true;
    }
    
Options Item

Vivamus sit amet elit at quam tempus venenatis auctor sit amet ipsum. Morbi rutrum, urna a sagittis condimentum, sem purus mattis dui, in consequat lectus magna at tellus. Quisque erat diam, placerat eget purus eget, dapibus tincidunt justo.

    @Override public boolean onOptionsItemSelected(MenuItem item) {
        if (item.getItemId() == R.id.theme) {
            if (AppCompatDelegate.getDefaultNightMode() != MODE_NIGHT_YES) {
                AppCompatDelegate.setDefaultNightMode(MODE_NIGHT_YES);
            } else {
                AppCompatDelegate.setDefaultNightMode(MODE_NIGHT_NO);
            }
            recreate();
        }
        return super.onOptionsItemSelected(item);
    }
    

Keep in mind

Common Issues

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed ut dui id lectus consequat viverra in eget tortor. Fusce dictum odio gravida turpis pharetra, eget ultrices ligula semper. Morbi massa nisl, venenatis semper erat a, dignissim tristique metus. Nam hendrerit eu turpis at maximus. Vivamus sit amet elit at quam tempus venenatis auctor sit amet ipsum. Morbi rutrum, urna a sagittis condimentum, sem purus mattis dui, in consequat lectus magna at tellus. Quisque erat diam, placerat eget purus eget, dapibus tincidunt justo.

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed ut dui id lectus consequat viverra in eget tortor. Fusce dictum odio gravida turpis pharetra, eget ultrices ligula semper. Morbi massa nisl, venenatis semper erat a, dignissim tristique metus. Nam hendrerit eu turpis at maximus. Vivamus sit amet elit at quam tempus venenatis auctor sit amet ipsum. Morbi rutrum, urna a sagittis condimentum, sem purus mattis dui, in consequat lectus magna at tellus. Quisque erat diam, placerat eget purus eget, dapibus tincidunt justo.

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed ut dui id lectus consequat viverra in eget tortor. Fusce dictum odio gravida turpis pharetra, eget ultrices ligula semper. Morbi massa nisl, venenatis semper erat a, dignissim tristique metus. Nam hendrerit eu turpis at maximus. Vivamus sit amet elit at quam tempus venenatis auctor sit amet ipsum. Morbi rutrum, urna a sagittis condimentum, sem purus mattis dui, in consequat lectus magna at tellus. Quisque erat diam, placerat eget purus eget, dapibus tincidunt justo.

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed ut dui id lectus consequat viverra in eget tortor. Fusce dictum odio gravida turpis pharetra, eget ultrices ligula semper. Morbi massa nisl, venenatis semper erat a, dignissim tristique metus. Nam hendrerit eu turpis at maximus. Vivamus sit amet elit at quam tempus venenatis auctor sit amet ipsum. Morbi rutrum, urna a sagittis condimentum, sem purus mattis dui, in consequat lectus magna at tellus. Quisque erat diam, placerat eget purus eget, dapibus tincidunt justo.

Lorem ipsum dolor sit amet, consectetur adipiscing elit. Sed ut dui id lectus consequat viverra in eget tortor. Fusce dictum odio gravida turpis pharetra, eget ultrices ligula semper. Morbi massa nisl, venenatis semper erat a, dignissim tristique metus. Nam hendrerit eu turpis at maximus. Vivamus sit amet elit at quam tempus venenatis auctor sit amet ipsum. Morbi rutrum, urna a sagittis condimentum, sem purus mattis dui, in consequat lectus magna at tellus. Quisque erat diam, placerat eget purus eget, dapibus tincidunt justo.

Frequently Asked Questions

Vivamus sit amet elit at quam tempus venenatis auctor sit amet ipsum. Morbi rutrum, urna a sagittis condimentum, sem purus mattis dui, in consequat lectus magna at tellus. Quisque erat diam, placerat eget purus eget, dapibus tincidunt justo.

Getting Help