Java tutorial
/* * Copyright (c) 2015. 2Lines Software,Inc * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.twolinessoftware.android.mobileresume.fragment; import android.content.Intent; import android.net.Uri; import android.os.Bundle; import android.support.v4.app.Fragment; import android.support.v7.widget.CardView; import android.text.Html; import android.view.LayoutInflater; import android.view.View; import android.view.ViewGroup; import android.widget.TextView; import com.twolinessoftware.android.mobileresume.R; import butterknife.ButterKnife; import butterknife.InjectView; import butterknife.OnClick; /** * Provides a shell fragment where a resource is passed in. */ public class ContactViewFragment extends Fragment { private static final String EXT_RESOURCE = "EXT_RESOURCE"; private int m_resourceId; @InjectView(R.id.card_contact_email) CardView m_contactEmail; public static ContactViewFragment newInstance() { ContactViewFragment fragment = new ContactViewFragment(); Bundle args = new Bundle(); fragment.setArguments(args); return fragment; } public ContactViewFragment() { // Required empty public constructor } @Override public void onActivityCreated(Bundle savedInstanceState) { super.onActivityCreated(savedInstanceState); ButterKnife.inject(this, getView()); } @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); } @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { return inflater.inflate(R.layout.fragment_contact, container, false); } @OnClick(R.id.card_contact_email) public void onSendEmail(View view) { Intent intent = new Intent(Intent.ACTION_SENDTO); intent.setData(Uri.parse("mailto:")); intent.putExtra(Intent.EXTRA_EMAIL, new String[] { "john@2linessoftware.com" }); intent.putExtra(Intent.EXTRA_SUBJECT, "Feedback"); startActivity(Intent.createChooser(intent, "Email via...")); } @OnClick(R.id.card_contact_twitter) public void onSendTwitter(View view) { Intent intent = null; try { // get the Twitter app if possible getActivity().getPackageManager().getPackageInfo("com.twitter.android", 0); intent = new Intent(Intent.ACTION_VIEW, Uri.parse("twitter://user?user_id=johncarpenter")); intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); } catch (Exception e) { // no Twitter app, revert to browser intent = new Intent(Intent.ACTION_VIEW, Uri.parse("https://twitter.com/johncarpenter")); } this.startActivity(intent); } }