Java tutorial
/******************************************************************************* * Copyright 2013-2016 alladin-IT GmbH * * 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 at.alladin.rmbt.android.terms; import android.app.Activity; import android.os.Bundle; import android.support.v4.app.Fragment; import android.view.LayoutInflater; import android.view.View; import android.view.View.OnClickListener; import android.view.ViewGroup; import android.webkit.WebView; import android.widget.Button; import android.widget.TextView; import at.alladin.openrmbt.android.R; import at.alladin.rmbt.android.main.RMBTMainActivity; import at.alladin.rmbt.android.terms.RMBTCheckFragment.CheckType; import at.alladin.rmbt.android.util.ConfigHelper; public class RMBTTermsCheckFragment extends Fragment { // private static final String DEBUG_TAG = "RMBTTermsCheckFragment"; private boolean firstTime = true; private View view; private CheckType followedByType; public static RMBTTermsCheckFragment newInstance(final CheckType followedBy) { final RMBTTermsCheckFragment f = new RMBTTermsCheckFragment(); final Bundle bdl = new Bundle(1); bdl.putSerializable("followedByType", followedBy); f.setArguments(bdl); return f; } @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); followedByType = (CheckType) getArguments().get("followedByType"); } @Override public View onCreateView(final LayoutInflater inflater, final ViewGroup container, final Bundle savedInstanceState) { view = inflater.inflate(R.layout.terms_check, container, false); final WebView tcWvs = (WebView) view.findViewById(R.id.termsCheckWebViewShort); tcWvs.loadUrl("file:///android_res/raw/terms_conditions_short.html"); final WebView tcWvl = (WebView) view.findViewById(R.id.termsCheckWebViewLong); tcWvl.loadUrl("file:///android_res/raw/terms_conditions_long.html"); final Activity activity = getActivity(); if (!(activity instanceof RMBTMainActivity)) firstTime = false; if (!firstTime) view.findViewById(R.id.termsButtonDecline).setVisibility(View.GONE); final Button buttonTermsAccept = (Button) view.findViewById(R.id.termsAcceptButton); buttonTermsAccept.setOnClickListener(new OnClickListener() { @Override public void onClick(final View v) { ConfigHelper.setTCAccepted(getActivity(), true); if (firstTime) { ((RMBTMainActivity) getActivity()).checkSettings(true, null); final boolean wasNDTTermsNecessary = ((RMBTMainActivity) getActivity()) .showNdtCheckIfNecessary(); if (!wasNDTTermsNecessary) ((RMBTMainActivity) activity).initApp(false); } else if (followedByType != null) { ((RMBTTermsActivity) getActivity()).continueWorkflow(); } } }); final Button buttonTermsDecline = (Button) view.findViewById(R.id.termsDeclineButton); buttonTermsDecline.setOnClickListener(new OnClickListener() { @Override public void onClick(final View v) { onBackPressed(); } }); return view; } @Override public void onResume() { super.onResume(); final Activity activity = getActivity(); final boolean tcAccepted = ConfigHelper.isTCAccepted(activity); if (tcAccepted) { final TextView buttonTermsAccept = (TextView) view.findViewById(R.id.termsAcceptButton); buttonTermsAccept.setText(R.string.terms_accept_button_continue); view.findViewById(R.id.termsAcceptText).setVisibility(View.GONE); } } public boolean onBackPressed() { // user has declined t+c! ConfigHelper.setTCAccepted(getActivity(), false); ConfigHelper.setUUID(getActivity(), ""); getActivity().finish(); return true; } }