1 /*
2  * Copyright (C) 2007 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 
17 package android.widget.listview;
18 
19 import android.util.ListScenario;
20 import android.util.ListItemFactory;
21 import android.view.View;
22 import android.view.ViewGroup;
23 
24 /**
25  * Each list item has two focusables that are close enough together that
26  * it shouldn't require panning to move focus.
27  */
28 public class ListItemFocusablesClose extends ListScenario {
29 
30 
31     /**
32      * Get the child of a list item.
33      * @param listIndex The index of the currently visible items
34      * @param index The index of the child.
35      */
getChildOfItem(int listIndex, int index)36     public View getChildOfItem(int listIndex, int index) {
37         return ((ViewGroup) getListView().getChildAt(listIndex)).getChildAt(index);
38 
39     }
40 
41     @Override
init(Params params)42     protected void init(Params params) {
43         params.setItemsFocusable(true)
44                 .setNumItems(2)
45                 .setItemScreenSizeFactor(0.55);
46     }
47 
48 
49     @Override
createView(int position, ViewGroup parent, int desiredHeight)50     protected View createView(int position, ViewGroup parent, int desiredHeight) {
51         return ListItemFactory.twoButtonsSeparatedByFiller(
52                 position, parent.getContext(), desiredHeight);
53     }
54 }
55