Search in sources :

Example 6 with MaterialAboutItemOnClickAction

use of com.danielstone.materialaboutlibrary.items.MaterialAboutItemOnClickAction in project material-about-library by daniel-stoneuk.

the class ExampleMaterialAboutFragment method createDynamicItem.

private MaterialAboutActionItem createDynamicItem(String subText, final Context c) {
    final MaterialAboutActionItem item = new MaterialAboutActionItem.Builder().text("Dynamic UI").subText(subText).icon(new IconicsDrawable(c).icon(CommunityMaterial.Icon.cmd_refresh).sizeDp(18)).build();
    item.setOnClickAction(new MaterialAboutItemOnClickAction() {

        @Override
        public void onClick() {
            item.setSubText("Random number: " + ((int) (Math.random() * 10)));
            refreshMaterialAboutList();
        }
    });
    return item;
}
Also used : MaterialAboutItemOnClickAction(com.danielstone.materialaboutlibrary.items.MaterialAboutItemOnClickAction) MaterialAboutActionItem(com.danielstone.materialaboutlibrary.items.MaterialAboutActionItem) IconicsDrawable(com.mikepenz.iconics.IconicsDrawable)

Example 7 with MaterialAboutItemOnClickAction

use of com.danielstone.materialaboutlibrary.items.MaterialAboutItemOnClickAction in project material-about-library by daniel-stoneuk.

the class ConvenienceBuilder method createPhoneOnClickAction.

/**
 * Creates a MaterialAboutItemOnClickAction that will open
 * the dialer with specified number.
 *
 * @param c      context
 * @param number phone number
 * @return onClickAction
 */
public static MaterialAboutItemOnClickAction createPhoneOnClickAction(final Context c, String number) {
    final Intent phoneIntent = new Intent(Intent.ACTION_DIAL);
    phoneIntent.setData(Uri.parse("tel:" + number));
    return new MaterialAboutItemOnClickAction() {

        @Override
        public void onClick() {
            try {
                c.startActivity(phoneIntent);
            } catch (Exception e) {
                // No activity to handle intent
                Toast.makeText(c, R.string.mal_activity_exception, Toast.LENGTH_SHORT).show();
            }
        }
    };
}
Also used : MaterialAboutItemOnClickAction(com.danielstone.materialaboutlibrary.items.MaterialAboutItemOnClickAction) Intent(android.content.Intent) ActivityNotFoundException(android.content.ActivityNotFoundException)

Example 8 with MaterialAboutItemOnClickAction

use of com.danielstone.materialaboutlibrary.items.MaterialAboutItemOnClickAction in project material-about-library by daniel-stoneuk.

the class ConvenienceBuilder method createEmailOnClickAction.

/**
 * Creates a MaterialAboutItemOnClickAction that will open
 * an email intent with specified address.
 *
 * @param c     context
 * @param email email address
 * @return onClickAction
 */
public static MaterialAboutItemOnClickAction createEmailOnClickAction(final Context c, String email, String emailSubject, final CharSequence chooserTitle) {
    final Intent emailIntent = new Intent(Intent.ACTION_SENDTO, Uri.parse("mailto:" + email));
    emailIntent.putExtra(Intent.EXTRA_SUBJECT, emailSubject);
    return new MaterialAboutItemOnClickAction() {

        @Override
        public void onClick() {
            try {
                c.startActivity(Intent.createChooser(emailIntent, chooserTitle));
            } catch (Exception e) {
                // No activity to handle intent
                Toast.makeText(c, R.string.mal_activity_exception, Toast.LENGTH_SHORT).show();
            }
        }
    };
}
Also used : MaterialAboutItemOnClickAction(com.danielstone.materialaboutlibrary.items.MaterialAboutItemOnClickAction) Intent(android.content.Intent) ActivityNotFoundException(android.content.ActivityNotFoundException)

Example 9 with MaterialAboutItemOnClickAction

use of com.danielstone.materialaboutlibrary.items.MaterialAboutItemOnClickAction in project material-about-library by daniel-stoneuk.

the class ConvenienceBuilder method createWebsiteOnClickAction.

public static MaterialAboutItemOnClickAction createWebsiteOnClickAction(final Context c, final Uri websiteUrl) {
    return new MaterialAboutItemOnClickAction() {

        @Override
        public void onClick() {
            Intent i = new Intent(Intent.ACTION_VIEW);
            i.setData(websiteUrl);
            try {
                c.startActivity(i);
            } catch (Exception e) {
                // No activity to handle intent
                Toast.makeText(c, R.string.mal_activity_exception, Toast.LENGTH_SHORT).show();
            }
        }
    };
}
Also used : MaterialAboutItemOnClickAction(com.danielstone.materialaboutlibrary.items.MaterialAboutItemOnClickAction) Intent(android.content.Intent) ActivityNotFoundException(android.content.ActivityNotFoundException)

Example 10 with MaterialAboutItemOnClickAction

use of com.danielstone.materialaboutlibrary.items.MaterialAboutItemOnClickAction in project material-about-library by daniel-stoneuk.

the class ConvenienceBuilder method createMapOnClickAction.

/**
 * Creates a MaterialAboutItemOnClickAction that will open
 * maps with a query.
 * Query can be either lat,lng(label) or written address
 *
 * @param c      context
 * @param addressQuery address query
 * @return onClickAction
 */
public static MaterialAboutItemOnClickAction createMapOnClickAction(final Context c, String addressQuery) {
    final Intent mapIntent = new Intent(Intent.ACTION_VIEW);
    mapIntent.setData(Uri.parse("geo:0,0").buildUpon().appendQueryParameter("q", addressQuery).build());
    return new MaterialAboutItemOnClickAction() {

        @Override
        public void onClick() {
            try {
                c.startActivity(mapIntent);
            } catch (Exception e) {
                // No activity to handle intent
                Toast.makeText(c, R.string.mal_activity_exception, Toast.LENGTH_SHORT).show();
            }
        }
    };
}
Also used : MaterialAboutItemOnClickAction(com.danielstone.materialaboutlibrary.items.MaterialAboutItemOnClickAction) Intent(android.content.Intent) ActivityNotFoundException(android.content.ActivityNotFoundException)

Aggregations

MaterialAboutItemOnClickAction (com.danielstone.materialaboutlibrary.items.MaterialAboutItemOnClickAction)11 Intent (android.content.Intent)7 ActivityNotFoundException (android.content.ActivityNotFoundException)5 MaterialAboutActionItem (com.danielstone.materialaboutlibrary.items.MaterialAboutActionItem)5 ConvenienceBuilder (com.danielstone.materialaboutlibrary.ConvenienceBuilder)4 IconicsDrawable (com.mikepenz.iconics.IconicsDrawable)4 MaterialAboutCard (com.danielstone.materialaboutlibrary.model.MaterialAboutCard)3 MaterialAboutTitleItem (com.danielstone.materialaboutlibrary.items.MaterialAboutTitleItem)2 MaterialAboutList (com.danielstone.materialaboutlibrary.model.MaterialAboutList)2 DialogInterface (android.content.DialogInterface)1 Uri (android.net.Uri)1 WebView (android.webkit.WebView)1 NonNull (androidx.annotation.NonNull)1 AlertDialog (androidx.appcompat.app.AlertDialog)1 IconDrawable (com.joanzapata.iconify.IconDrawable)1 ArrayList (java.util.ArrayList)1 Library (net.yslibrary.licenseadapter.Library)1 LicenseAdapter (net.yslibrary.licenseadapter.LicenseAdapter)1