Chris Craik | b3dba55 | 2015-08-31 17:22:04 -0700 | [diff] [blame] | 1 | /* |
| 2 | * Copyright (C) 2015 The Android Open Source Project |
| 3 | * |
| 4 | * Licensed under the Apache License, Version 2.0 (the "License"); |
| 5 | * you may not use this file except in compliance with the License. |
| 6 | * You may obtain a copy of the License at |
| 7 | * |
| 8 | * http://www.apache.org/licenses/LICENSE-2.0 |
| 9 | * |
| 10 | * Unless required by applicable law or agreed to in writing, software |
| 11 | * distributed under the License is distributed on an "AS IS" BASIS, |
| 12 | * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 13 | * See the License for the specific language governing permissions and |
| 14 | * limitations under the License. |
| 15 | */ |
| 16 | package com.android.test.uibench; |
| 17 | |
Seigo Nonaka | 47bc948 | 2017-06-16 09:56:18 -0700 | [diff] [blame] | 18 | import android.content.ComponentName; |
Chris Craik | b3dba55 | 2015-08-31 17:22:04 -0700 | [diff] [blame] | 19 | import android.view.View; |
| 20 | import android.view.ViewGroup; |
| 21 | import android.widget.ArrayAdapter; |
| 22 | import android.widget.ListAdapter; |
| 23 | |
Md Haque | d68e8cb | 2015-09-01 12:00:34 -0700 | [diff] [blame] | 24 | import com.android.test.uibench.listview.CompatListActivity; |
| 25 | |
Chris Craik | 4cbf5ef | 2015-09-01 15:30:57 -0700 | [diff] [blame] | 26 | public class InflatingListActivity extends CompatListActivity { |
Seigo Nonaka | 47bc948 | 2017-06-16 09:56:18 -0700 | [diff] [blame] | 27 | private static final String PACKAGE_NAME = "com.android.test.uibench"; |
| 28 | private static final ComponentName LATIN_WORDS = |
| 29 | ComponentName.createRelative(PACKAGE_NAME, ".InflatingListActivity"); |
| 30 | private static final ComponentName EMOJI = |
| 31 | ComponentName.createRelative(PACKAGE_NAME, ".InflatingEmojiListActivity"); |
| 32 | private static final ComponentName HAN = |
| 33 | ComponentName.createRelative(PACKAGE_NAME, ".InflatingHanListActivity"); |
| 34 | private static final ComponentName LONG_STRING = |
| 35 | ComponentName.createRelative(PACKAGE_NAME, ".InflatingLongStringListActivity"); |
Chris Craik | 4cbf5ef | 2015-09-01 15:30:57 -0700 | [diff] [blame] | 36 | @Override |
| 37 | protected ListAdapter createListAdapter() { |
Seigo Nonaka | 47bc948 | 2017-06-16 09:56:18 -0700 | [diff] [blame] | 38 | final ComponentName targetComponent = getIntent().getComponent(); |
| 39 | |
| 40 | final String[] testStrings; |
| 41 | if (targetComponent.equals(LATIN_WORDS)) { |
| 42 | testStrings = TextUtils.buildSimpleStringList(); |
| 43 | } else if (targetComponent.equals(EMOJI)) { |
| 44 | testStrings = TextUtils.buildEmojiStringList(); |
| 45 | } else if (targetComponent.equals(HAN)) { |
| 46 | testStrings = TextUtils.buildHanStringList(); |
| 47 | } else if (targetComponent.equals(LONG_STRING)) { |
| 48 | testStrings = TextUtils.buildLongStringList(); |
| 49 | } else { |
| 50 | throw new RuntimeException("Unknown Component: " + targetComponent); |
| 51 | } |
| 52 | |
| 53 | return new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, testStrings) { |
Chris Craik | b3dba55 | 2015-08-31 17:22:04 -0700 | [diff] [blame] | 54 | @Override |
| 55 | public View getView(int position, View convertView, ViewGroup parent) { |
| 56 | // pathological getView behavior: drop convertView on the floor to force inflation |
| 57 | return super.getView(position, null, parent); |
| 58 | } |
| 59 | }; |
| 60 | } |
Chris Craik | b3dba55 | 2015-08-31 17:22:04 -0700 | [diff] [blame] | 61 | } |