Back to project page XKCD-WebComics-APP.
The source code is released under:
GNU Lesser General Public License
If you think the Android project XKCD-WebComics-APP listed in this page is inappropriate, such as containing malicious code/tools or violating the copyright, please email info at java2s dot com, thanks.
package com.akash.xkxd; /* www.jav a 2s . c om*/ import android.app.Activity; import android.app.AlertDialog; import android.content.Context; import android.content.pm.PackageManager; import android.text.SpannableString; import android.text.util.Linkify; import android.view.InflateException; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.TextView; public class AboutApp { static String VersionName(Context context) { try { return context.getPackageManager().getPackageInfo(context.getPackageName(),0).versionName; } catch (PackageManager.NameNotFoundException e) { return "Unknown"; } } public static void Show(Activity callingActivity) { //Use a Spannable to allow for links highlighting SpannableString aboutText = new SpannableString("Version " + VersionName(callingActivity)+ "\n\n" + callingActivity.getString(R.string.about)); //Generate views to pass to AlertDialog.Builder and to set the text View about; TextView tvAbout; try { //Inflate the custom view LayoutInflater inflater = callingActivity.getLayoutInflater(); about = inflater.inflate(R.layout.activity_about_app, (ViewGroup) callingActivity.findViewById(R.id.aboutView)); tvAbout = (TextView) about.findViewById(R.id.aboutText); } catch(InflateException e) { //Inflater can throw exception, unlikely but default to TextView if it occurs about = tvAbout = new TextView(callingActivity); } //Set the about text tvAbout.setText(aboutText); // Now Linkify the text Linkify.addLinks(tvAbout, Linkify.ALL); //Build and show the dialog new AlertDialog.Builder(callingActivity) .setTitle("About " + callingActivity.getString(R.string.app_name)) .setCancelable(true) .setPositiveButton("OK", null) .setView(about) .show(); //Builder method returns allow for method chaining } }