|
2 | 2 |
|
3 | 3 | import android.content.Intent; |
4 | 4 | import android.os.Bundle; |
| 5 | +import android.support.annotation.NonNull; |
5 | 6 | import android.support.v7.app.AppCompatActivity; |
6 | 7 | import android.support.v7.widget.LinearLayoutManager; |
7 | 8 | import android.support.v7.widget.RecyclerView; |
|
43 | 44 | */ |
44 | 45 | public class MainActivity extends AppCompatActivity { |
45 | 46 |
|
46 | | - private final static String LOG_TAG = "MainActivity"; |
47 | | - |
48 | | - private RecyclerView mRecyclerView; |
49 | | - private RecyclerView.Adapter mAdapter; |
50 | | - private RecyclerView.LayoutManager mLayoutManager; |
51 | | - |
52 | | - private final static List<SampleItem> samples = new ArrayList<>(Arrays.asList( |
53 | | - new SampleItem("Directions v5", "", DirectionsV5Activity.class), |
54 | | - new SampleItem("Route Utils v5", "", RouteUtilsV5Activity.class), |
55 | | - new SampleItem("Directions v4", "", DirectionsV4Activity.class), |
56 | | - new SampleItem("Directions icons", "", DirectionsIconsActivity.class), |
57 | | - new SampleItem("Reverse geocoding", "", GeocodingReverseActivity.class), |
58 | | - new SampleItem("Geocoding widget", "", GeocodingWidgetActivity.class), |
59 | | - new SampleItem("Geocoding service", "", GeocodingServiceActivity.class), |
60 | | - new SampleItem("Maki icons", "", MakiIconsActivity.class), |
61 | | - new SampleItem("Static image", "", StaticImageActivity.class), |
62 | | - new SampleItem("Simplify polyline", "", SimplifyPolylineActivity.class), |
63 | | - new SampleItem("Map matching", "", MapMatchingActivity.class), |
64 | | - new SampleItem("Turf bearing", "", TurfBearingActivity.class), |
65 | | - new SampleItem("Turf destination", "", TurfDestinationActivity.class), |
66 | | - new SampleItem("Turf distance", "", TurfDistanceActivity.class), |
67 | | - new SampleItem("Turf line slice", "", TurfLineSliceActivity.class), |
68 | | - new SampleItem("Turf inside", "", TurfInsideActivity.class), |
69 | | - new SampleItem("Turf midpoint", "", TurfMidpointActivity.class), |
70 | | - new SampleItem("Off route detection", "", OffRouteDetectionActivity.class) |
71 | | - )); |
72 | | - |
73 | | - @Override |
74 | | - protected void onCreate(Bundle savedInstanceState) { |
75 | | - super.onCreate(savedInstanceState); |
76 | | - setContentView(R.layout.activity_main); |
77 | | - Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); |
78 | | - setSupportActionBar(toolbar); |
79 | | - |
80 | | - // Debug information |
81 | | - Log.d(LOG_TAG, "MAS version name: " + BuildConfig.VERSION_NAME); |
82 | | - Log.d(LOG_TAG, "MAS version code: " + BuildConfig.VERSION_CODE); |
83 | | - |
84 | | - // RecyclerView |
85 | | - mRecyclerView = (RecyclerView) findViewById(R.id.recycler_view); |
86 | | - mRecyclerView.setHasFixedSize(true); |
87 | | - |
88 | | - // Use a linear layout manager |
89 | | - mLayoutManager = new LinearLayoutManager(this); |
90 | | - mRecyclerView.setLayoutManager(mLayoutManager); |
91 | | - |
92 | | - // Specify an adapter |
93 | | - mAdapter = new MainAdapter(samples); |
94 | | - mRecyclerView.setAdapter(mAdapter); |
95 | | - |
96 | | - // Check for location permission |
97 | | - if (!PermissionsUtils.isLocationGranted(this)) { |
98 | | - mRecyclerView.setEnabled(false); |
99 | | - PermissionsUtils.startPermissionFlow(this); |
100 | | - } |
| 47 | + private static final String LOG_TAG = "MainActivity"; |
| 48 | + |
| 49 | + private RecyclerView recyclerView; |
| 50 | + private RecyclerView.Adapter adapter; |
| 51 | + private RecyclerView.LayoutManager layoutManager; |
| 52 | + |
| 53 | + private static final List<SampleItem> samples = new ArrayList<>(Arrays.asList( |
| 54 | + new SampleItem("Directions v5", "", DirectionsV5Activity.class), |
| 55 | + new SampleItem("Route Utils v5", "", RouteUtilsV5Activity.class), |
| 56 | + new SampleItem("Directions v4", "", DirectionsV4Activity.class), |
| 57 | + new SampleItem("Directions icons", "", DirectionsIconsActivity.class), |
| 58 | + new SampleItem("Reverse geocoding", "", GeocodingReverseActivity.class), |
| 59 | + new SampleItem("Geocoding widget", "", GeocodingWidgetActivity.class), |
| 60 | + new SampleItem("Geocoding service", "", GeocodingServiceActivity.class), |
| 61 | + new SampleItem("Maki icons", "", MakiIconsActivity.class), |
| 62 | + new SampleItem("Static image", "", StaticImageActivity.class), |
| 63 | + new SampleItem("Simplify polyline", "", SimplifyPolylineActivity.class), |
| 64 | + new SampleItem("Map matching", "", MapMatchingActivity.class), |
| 65 | + new SampleItem("Turf bearing", "", TurfBearingActivity.class), |
| 66 | + new SampleItem("Turf destination", "", TurfDestinationActivity.class), |
| 67 | + new SampleItem("Turf distance", "", TurfDistanceActivity.class), |
| 68 | + new SampleItem("Turf line slice", "", TurfLineSliceActivity.class), |
| 69 | + new SampleItem("Turf inside", "", TurfInsideActivity.class), |
| 70 | + new SampleItem("Turf midpoint", "", TurfMidpointActivity.class), |
| 71 | + new SampleItem("Off route detection", "", OffRouteDetectionActivity.class) |
| 72 | + )); |
| 73 | + |
| 74 | + @Override |
| 75 | + protected void onCreate(Bundle savedInstanceState) { |
| 76 | + super.onCreate(savedInstanceState); |
| 77 | + setContentView(R.layout.activity_main); |
| 78 | + Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar); |
| 79 | + setSupportActionBar(toolbar); |
| 80 | + |
| 81 | + // Debug information |
| 82 | + Log.d(LOG_TAG, "MAS version name: " + BuildConfig.VERSION_NAME); |
| 83 | + Log.d(LOG_TAG, "MAS version code: " + BuildConfig.VERSION_CODE); |
| 84 | + |
| 85 | + // RecyclerView |
| 86 | + recyclerView = (RecyclerView) findViewById(R.id.recycler_view); |
| 87 | + recyclerView.setHasFixedSize(true); |
| 88 | + |
| 89 | + // Use a linear layout manager |
| 90 | + layoutManager = new LinearLayoutManager(this); |
| 91 | + recyclerView.setLayoutManager(layoutManager); |
| 92 | + |
| 93 | + // Specify an adapter |
| 94 | + adapter = new MainAdapter(samples); |
| 95 | + recyclerView.setAdapter(adapter); |
| 96 | + |
| 97 | + // Check for location permission |
| 98 | + if (!PermissionsUtils.isLocationGranted(this)) { |
| 99 | + recyclerView.setEnabled(false); |
| 100 | + PermissionsUtils.startPermissionFlow(this); |
101 | 101 | } |
102 | | - |
103 | | - @Override |
104 | | - public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults) { |
105 | | - if (PermissionsUtils.isRequestSuccessful(requestCode, permissions, grantResults)) { |
106 | | - mRecyclerView.setEnabled(true); |
107 | | - } else { |
108 | | - PermissionsUtils.explainFallback(this); |
109 | | - } |
| 102 | + } |
| 103 | + |
| 104 | + @Override |
| 105 | + public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) { |
| 106 | + if (PermissionsUtils.isRequestSuccessful(requestCode, permissions, grantResults)) { |
| 107 | + recyclerView.setEnabled(true); |
| 108 | + } else { |
| 109 | + PermissionsUtils.explainFallback(this); |
110 | 110 | } |
| 111 | + } |
111 | 112 |
|
112 | | - /* |
113 | | - * Recycler view |
114 | | - */ |
| 113 | + /* |
| 114 | + * Recycler view |
| 115 | + */ |
115 | 116 |
|
116 | | - private class MainAdapter extends RecyclerView.Adapter<MainAdapter.ViewHolder> { |
| 117 | + private class MainAdapter extends RecyclerView.Adapter<MainAdapter.ViewHolder> { |
117 | 118 |
|
118 | | - private List<SampleItem> samples; |
| 119 | + private List<SampleItem> samples; |
119 | 120 |
|
120 | | - public class ViewHolder extends RecyclerView.ViewHolder { |
| 121 | + public class ViewHolder extends RecyclerView.ViewHolder { |
121 | 122 |
|
122 | | - private TextView nameView; |
123 | | - private TextView descriptionView; |
| 123 | + private TextView nameView; |
| 124 | + private TextView descriptionView; |
124 | 125 |
|
125 | | - public ViewHolder(View v) { |
126 | | - super(v); |
127 | | - nameView = (TextView) v.findViewById(R.id.nameView); |
128 | | - descriptionView = (TextView) v.findViewById(R.id.descriptionView); |
129 | | - } |
130 | | - } |
| 126 | + public ViewHolder(View view) { |
| 127 | + super(view); |
| 128 | + nameView = (TextView) view.findViewById(R.id.nameView); |
| 129 | + descriptionView = (TextView) view.findViewById(R.id.descriptionView); |
| 130 | + } |
| 131 | + } |
131 | 132 |
|
132 | | - public MainAdapter(List<SampleItem> samples) { |
133 | | - this.samples = samples; |
134 | | - } |
| 133 | + public MainAdapter(List<SampleItem> samples) { |
| 134 | + this.samples = samples; |
| 135 | + } |
135 | 136 |
|
136 | | - @Override |
137 | | - public MainAdapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { |
138 | | - View v = LayoutInflater |
139 | | - .from(parent.getContext()) |
140 | | - .inflate(R.layout.item_main_feature, parent, false); |
141 | | - |
142 | | - v.setOnClickListener(new View.OnClickListener() { |
143 | | - @Override |
144 | | - public void onClick(View v) { |
145 | | - int position = mRecyclerView.getChildLayoutPosition(v); |
146 | | - Intent intent = new Intent(v.getContext(), samples.get(position).getActivity()); |
147 | | - startActivity(intent); |
148 | | - } |
149 | | - }); |
150 | | - |
151 | | - return new ViewHolder(v); |
152 | | - } |
| 137 | + @Override |
| 138 | + public MainAdapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { |
| 139 | + View view = LayoutInflater |
| 140 | + .from(parent.getContext()) |
| 141 | + .inflate(R.layout.item_main_feature, parent, false); |
153 | 142 |
|
| 143 | + view.setOnClickListener(new View.OnClickListener() { |
154 | 144 | @Override |
155 | | - public void onBindViewHolder(MainAdapter.ViewHolder holder, int position) { |
156 | | - holder.nameView.setText(samples.get(position).getName()); |
157 | | - holder.descriptionView.setText(samples.get(position).getDescription()); |
| 145 | + public void onClick(View view) { |
| 146 | + int position = recyclerView.getChildLayoutPosition(view); |
| 147 | + Intent intent = new Intent(view.getContext(), samples.get(position).getActivity()); |
| 148 | + startActivity(intent); |
158 | 149 | } |
| 150 | + }); |
159 | 151 |
|
160 | | - @Override |
161 | | - public int getItemCount() { |
162 | | - return samples.size(); |
163 | | - } |
| 152 | + return new ViewHolder(view); |
| 153 | + } |
| 154 | + |
| 155 | + @Override |
| 156 | + public void onBindViewHolder(MainAdapter.ViewHolder holder, int position) { |
| 157 | + holder.nameView.setText(samples.get(position).getName()); |
| 158 | + holder.descriptionView.setText(samples.get(position).getDescription()); |
| 159 | + } |
| 160 | + |
| 161 | + @Override |
| 162 | + public int getItemCount() { |
| 163 | + return samples.size(); |
164 | 164 | } |
| 165 | + } |
165 | 166 | } |
0 commit comments