SupportPercentDemos.java revision 973c8f507a83250d3aae077427bd4df67ba4ff61
1e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski/* 2e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski * Copyright (C) 2015 The Android Open Source Project 3e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski * 4e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski * Licensed under the Apache License, Version 2.0 (the "License"); 5e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski * you may not use this file except in compliance with the License. 6e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski * You may obtain a copy of the License at 7e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski * 8e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski * http://www.apache.org/licenses/LICENSE-2.0 9e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski * 10e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski * Unless required by applicable law or agreed to in writing, software 11e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski * distributed under the License is distributed on an "AS IS" BASIS, 12e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski * See the License for the specific language governing permissions and 14e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski * limitations under the License. 15e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski */ 16e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski 17e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynskipackage com.example.android.support.percent; 18e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski 19e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynskiimport android.app.Activity; 20e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynskiimport android.app.Fragment; 21e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynskiimport android.os.Bundle; 22e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynskiimport android.app.FragmentManager; 23e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynskiimport android.support.v13.app.FragmentStatePagerAdapter; 24e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynskiimport android.support.v4.view.ViewPager; 25e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynskiimport android.view.LayoutInflater; 26e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynskiimport android.view.View; 27e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynskiimport android.view.ViewGroup; 28e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski 29e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynskipublic class SupportPercentDemos extends Activity { 30e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski private static final String LAYOUT_RESOURCE_ID = "layout_resource_id"; 31e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski 32e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski private ViewPager mPager; 33e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski 34e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski @Override 35e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski protected void onCreate(Bundle savedInstanceState) { 36e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski super.onCreate(savedInstanceState); 37e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski setContentView(R.layout.support_percent_demos); 38e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski mPager = (ViewPager) findViewById(R.id.pager); 39e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski mPager.setAdapter(new Adapter(getFragmentManager())); 40e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski } 41e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski 42e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski public static class Adapter extends FragmentStatePagerAdapter { 43e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski public Adapter(FragmentManager fm) { 44e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski super(fm); 45e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski } 46e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski 47973c8f507a83250d3aae077427bd4df67ba4ff61Filip Gruszczynski 48e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski @Override 49e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski public Fragment getItem(int position) { 50e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski PercentFragment fragment = new PercentFragment(); 51e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski Bundle args = new Bundle(); 52e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski switch (position) { 53e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski case 0: 54e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski args.putInt(LAYOUT_RESOURCE_ID, R.layout.demo_1); 55e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski break; 56e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski case 1: 57e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski args.putInt(LAYOUT_RESOURCE_ID, R.layout.demo_2); 58973c8f507a83250d3aae077427bd4df67ba4ff61Filip Gruszczynski break; 59973c8f507a83250d3aae077427bd4df67ba4ff61Filip Gruszczynski case 2: 60973c8f507a83250d3aae077427bd4df67ba4ff61Filip Gruszczynski args.putInt(LAYOUT_RESOURCE_ID, R.layout.demo_3); 61973c8f507a83250d3aae077427bd4df67ba4ff61Filip Gruszczynski break; 62e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski default: 63e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski break; 64e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski } 65e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski fragment.setArguments(args); 66e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski return fragment; 67e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski } 68e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski 69e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski @Override 70e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski public int getCount() { 71973c8f507a83250d3aae077427bd4df67ba4ff61Filip Gruszczynski return 3; 72e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski } 73e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski } 74e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski 75e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski public static class PercentFragment extends Fragment { 76e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski public PercentFragment() { 77e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski } 78e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski 79e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski @Override 80e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski public View onCreateView(LayoutInflater inflater, ViewGroup container, 81e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski Bundle savedInstanceState) { 82e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski Bundle args = getArguments(); 83e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski int layout = args.getInt(LAYOUT_RESOURCE_ID); 84e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski return inflater.inflate(layout, container, false); 85e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski } 86e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski } 87e5275fa662cbd4839031f3a0f2212d976dfb53d3Filip Gruszczynski} 88