xref: /aosp_15_r20/pdk/apps/TestingCamera2/res/layout/main.xml (revision ac7df209e3ba002eb4fcfc7c8d4b818a0371fca4)
1*ac7df209SYuntao Xu<?xml version="1.0" encoding="utf-8"?>
2*ac7df209SYuntao Xu<!--
3*ac7df209SYuntao Xu     Copyright (C) 2013 The Android Open Source Project
4*ac7df209SYuntao Xu
5*ac7df209SYuntao Xu     Licensed under the Apache License, Version 2.0 (the "License");
6*ac7df209SYuntao Xu     you may not use this file except in compliance with the License.
7*ac7df209SYuntao Xu     You may obtain a copy of the License at
8*ac7df209SYuntao Xu
9*ac7df209SYuntao Xu          http://www.apache.org/licenses/LICENSE-2.0
10*ac7df209SYuntao Xu
11*ac7df209SYuntao Xu     Unless required by applicable law or agreed to in writing, software
12*ac7df209SYuntao Xu     distributed under the License is distributed on an "AS IS" BASIS,
13*ac7df209SYuntao Xu     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14*ac7df209SYuntao Xu     See the License for the specific language governing permissions and
15*ac7df209SYuntao Xu     limitations under the License.
16*ac7df209SYuntao Xu-->
17*ac7df209SYuntao Xu<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
18*ac7df209SYuntao Xu    xmlns:tools="http://schemas.android.com/tools"
19*ac7df209SYuntao Xu    android:id="@+id/panels"
20*ac7df209SYuntao Xu    android:layout_width="fill_parent"
21*ac7df209SYuntao Xu    android:layout_height="fill_parent"
22*ac7df209SYuntao Xu    android:orientation="horizontal" >
23*ac7df209SYuntao Xu
24*ac7df209SYuntao Xu  <GridLayout
25*ac7df209SYuntao Xu      android:id="@+id/target_grid"
26*ac7df209SYuntao Xu      android:layout_width="0dp"
27*ac7df209SYuntao Xu      android:layout_height="fill_parent"
28*ac7df209SYuntao Xu      android:layout_weight="6"
29*ac7df209SYuntao Xu      android:rowCount="2"
30*ac7df209SYuntao Xu      android:columnCount="2">
31*ac7df209SYuntao Xu
32*ac7df209SYuntao Xu    <SurfaceView
33*ac7df209SYuntao Xu        android:id="@+id/preview_view"
34*ac7df209SYuntao Xu        android:layout_width="240dp"
35*ac7df209SYuntao Xu        android:layout_height="180dp" />
36*ac7df209SYuntao Xu
37*ac7df209SYuntao Xu    <ImageView
38*ac7df209SYuntao Xu        android:id="@+id/still_view"
39*ac7df209SYuntao Xu        android:layout_width="240dp"
40*ac7df209SYuntao Xu        android:layout_height="180dp" />
41*ac7df209SYuntao Xu
42*ac7df209SYuntao Xu    <SurfaceView
43*ac7df209SYuntao Xu        android:id="@+id/preview_view2"
44*ac7df209SYuntao Xu        android:layout_width="240dp"
45*ac7df209SYuntao Xu        android:layout_height="180dp" />
46*ac7df209SYuntao Xu
47*ac7df209SYuntao Xu  </GridLayout>
48*ac7df209SYuntao Xu
49*ac7df209SYuntao Xu  <ScrollView
50*ac7df209SYuntao Xu      android:id="@+id/controls_scroll"
51*ac7df209SYuntao Xu      android:layout_width="0dp"
52*ac7df209SYuntao Xu      android:layout_height="fill_parent"
53*ac7df209SYuntao Xu      android:layout_weight="2">
54*ac7df209SYuntao Xu
55*ac7df209SYuntao Xu    <LinearLayout
56*ac7df209SYuntao Xu        android:id="@+id/control_bar_contents"
57*ac7df209SYuntao Xu        android:layout_width="match_parent"
58*ac7df209SYuntao Xu        android:layout_height="wrap_content"
59*ac7df209SYuntao Xu        android:layout_marginLeft="5dp"
60*ac7df209SYuntao Xu        android:orientation="vertical" >
61*ac7df209SYuntao Xu
62*ac7df209SYuntao Xu        <Spinner
63*ac7df209SYuntao Xu            android:id="@+id/camera_id_spinner"
64*ac7df209SYuntao Xu            android:layout_width="fill_parent"
65*ac7df209SYuntao Xu            android:layout_height="wrap_content"
66*ac7df209SYuntao Xu            android:spinnerMode="dropdown"
67*ac7df209SYuntao Xu            android:prompt="@string/camera_id_spinner_prompt"
68*ac7df209SYuntao Xu            />
69*ac7df209SYuntao Xu        <Spinner
70*ac7df209SYuntao Xu            android:id="@+id/still_format_spinner"
71*ac7df209SYuntao Xu            android:layout_width="fill_parent"
72*ac7df209SYuntao Xu            android:layout_height="wrap_content"
73*ac7df209SYuntao Xu            android:spinnerMode="dropdown"
74*ac7df209SYuntao Xu            android:prompt="@string/still_format_spinner_prompt"
75*ac7df209SYuntao Xu            />
76*ac7df209SYuntao Xu        <Button
77*ac7df209SYuntao Xu            android:id="@+id/info_button"
78*ac7df209SYuntao Xu            android:text="@string/info_button_label"
79*ac7df209SYuntao Xu            android:layout_width="fill_parent"
80*ac7df209SYuntao Xu            android:layout_height="wrap_content"
81*ac7df209SYuntao Xu            />
82*ac7df209SYuntao Xu
83*ac7df209SYuntao Xu        <ToggleButton
84*ac7df209SYuntao Xu            android:id="@+id/start_recording"
85*ac7df209SYuntao Xu            android:layout_width="fill_parent"
86*ac7df209SYuntao Xu            android:layout_height="wrap_content"
87*ac7df209SYuntao Xu            android:layout_gravity="center"
88*ac7df209SYuntao Xu            android:layout_weight="1"
89*ac7df209SYuntao Xu            android:textColorLink="@android:color/holo_red_light"
90*ac7df209SYuntao Xu            android:textOff="@string/recording_off_label"
91*ac7df209SYuntao Xu            android:textOn="@string/recording_on_label" />
92*ac7df209SYuntao Xu
93*ac7df209SYuntao Xu        <Button
94*ac7df209SYuntao Xu            android:id="@+id/flush_button"
95*ac7df209SYuntao Xu            android:text="@string/flush_button_label"
96*ac7df209SYuntao Xu            android:layout_width="fill_parent"
97*ac7df209SYuntao Xu            android:layout_height="wrap_content"
98*ac7df209SYuntao Xu            />
99*ac7df209SYuntao Xu
100*ac7df209SYuntao Xu        <ToggleButton
101*ac7df209SYuntao Xu            android:id="@+id/focus_button"
102*ac7df209SYuntao Xu            android:layout_width="fill_parent"
103*ac7df209SYuntao Xu            android:layout_height="wrap_content"
104*ac7df209SYuntao Xu            android:layout_gravity="center"
105*ac7df209SYuntao Xu            android:layout_weight="1"
106*ac7df209SYuntao Xu            android:textColorLink="@android:color/holo_red_light"
107*ac7df209SYuntao Xu            android:textOn="@string/focus_unlock_button_label"
108*ac7df209SYuntao Xu            android:textOff="@string/focus_lock_button_label" />
109*ac7df209SYuntao Xu
110*ac7df209SYuntao Xu        <View
111*ac7df209SYuntao Xu            android:id="@+id/horizontal_rule_1"
112*ac7df209SYuntao Xu            android:layout_width="fill_parent"
113*ac7df209SYuntao Xu            android:layout_height="1dip"
114*ac7df209SYuntao Xu            android:layout_marginBottom="@dimen/horiz_rule_btm_margin"
115*ac7df209SYuntao Xu            android:layout_marginTop="@dimen/horiz_rule_top_margin"
116*ac7df209SYuntao Xu            android:background="@color/horiz_rule_color" />
117*ac7df209SYuntao Xu
118*ac7df209SYuntao Xu        <Spinner
119*ac7df209SYuntao Xu            android:id="@+id/focus_mode_spinner"
120*ac7df209SYuntao Xu            android:layout_width="fill_parent"
121*ac7df209SYuntao Xu            android:layout_height="wrap_content"
122*ac7df209SYuntao Xu            android:spinnerMode="dropdown"
123*ac7df209SYuntao Xu            android:prompt="@string/focus_mode_spinner_prompt"
124*ac7df209SYuntao Xu            />
125*ac7df209SYuntao Xu
126*ac7df209SYuntao Xu        <CheckBox
127*ac7df209SYuntao Xu            android:id="@+id/use_media_codec"
128*ac7df209SYuntao Xu            android:layout_width="fill_parent"
129*ac7df209SYuntao Xu            android:layout_height="wrap_content"
130*ac7df209SYuntao Xu            android:text="@string/use_media_codec_label" />
131*ac7df209SYuntao Xu
132*ac7df209SYuntao Xu        <ToggleButton
133*ac7df209SYuntao Xu            android:id="@+id/manual_control"
134*ac7df209SYuntao Xu            android:layout_width="fill_parent"
135*ac7df209SYuntao Xu            android:layout_height="wrap_content"
136*ac7df209SYuntao Xu            android:layout_gravity="center"
137*ac7df209SYuntao Xu            android:layout_weight="1"
138*ac7df209SYuntao Xu            android:textColorLink="@android:color/holo_blue_light"
139*ac7df209SYuntao Xu            android:textOff="@string/auto_control_label"
140*ac7df209SYuntao Xu            android:textOn="@string/manual_control_label" />
141*ac7df209SYuntao Xu
142*ac7df209SYuntao Xu        <TextView
143*ac7df209SYuntao Xu            android:id="@+id/sensitivity_bar_label"
144*ac7df209SYuntao Xu            android:layout_width="wrap_content"
145*ac7df209SYuntao Xu            android:layout_height="wrap_content"
146*ac7df209SYuntao Xu            android:layout_weight="1"
147*ac7df209SYuntao Xu            android:text="@string/sensitivity_value_prompt"
148*ac7df209SYuntao Xu            android:textAppearance="?android:attr/textAppearanceSmall" />
149*ac7df209SYuntao Xu
150*ac7df209SYuntao Xu        <SeekBar android:id="@+id/sensitivity_seekbar"
151*ac7df209SYuntao Xu            android:layout_width="fill_parent"
152*ac7df209SYuntao Xu            android:layout_height="wrap_content"
153*ac7df209SYuntao Xu            android:progress="0"
154*ac7df209SYuntao Xu            style="?android:attr/progressBarStyleHorizontal"
155*ac7df209SYuntao Xu            />
156*ac7df209SYuntao Xu
157*ac7df209SYuntao Xu        <TextView
158*ac7df209SYuntao Xu            android:id="@+id/exposure_time_bar_label"
159*ac7df209SYuntao Xu            android:layout_width="wrap_content"
160*ac7df209SYuntao Xu            android:layout_height="wrap_content"
161*ac7df209SYuntao Xu            android:layout_weight="1"
162*ac7df209SYuntao Xu            android:text="@string/exposure_time_prompt"
163*ac7df209SYuntao Xu            android:textAppearance="?android:attr/textAppearanceSmall" />
164*ac7df209SYuntao Xu
165*ac7df209SYuntao Xu        <SeekBar android:id="@+id/exposure_time_seekbar"
166*ac7df209SYuntao Xu            android:layout_width="fill_parent"
167*ac7df209SYuntao Xu            android:layout_height="wrap_content"
168*ac7df209SYuntao Xu            android:progress="0"
169*ac7df209SYuntao Xu            style="?android:attr/progressBarStyleHorizontal"
170*ac7df209SYuntao Xu            />
171*ac7df209SYuntao Xu
172*ac7df209SYuntao Xu        <TextView
173*ac7df209SYuntao Xu            android:id="@+id/frame_duration_bar_label"
174*ac7df209SYuntao Xu            android:layout_width="wrap_content"
175*ac7df209SYuntao Xu            android:layout_height="wrap_content"
176*ac7df209SYuntao Xu            android:layout_weight="1"
177*ac7df209SYuntao Xu            android:text="@string/frame_duration_value_prompt"
178*ac7df209SYuntao Xu            android:textAppearance="?android:attr/textAppearanceSmall" />
179*ac7df209SYuntao Xu
180*ac7df209SYuntao Xu        <SeekBar android:id="@+id/frame_duration_seekbar"
181*ac7df209SYuntao Xu            android:layout_width="fill_parent"
182*ac7df209SYuntao Xu            android:layout_height="wrap_content"
183*ac7df209SYuntao Xu            android:progress="0"
184*ac7df209SYuntao Xu            style="?android:attr/progressBarStyleHorizontal"
185*ac7df209SYuntao Xu            />
186*ac7df209SYuntao Xu
187*ac7df209SYuntao Xu        <RadioGroup
188*ac7df209SYuntao Xu          android:id="@+id/radio_fmt"
189*ac7df209SYuntao Xu          android:layout_width="wrap_content"
190*ac7df209SYuntao Xu          android:layout_height="wrap_content" >
191*ac7df209SYuntao Xu
192*ac7df209SYuntao Xu          <RadioButton
193*ac7df209SYuntao Xu            android:id="@+id/radio_mp4"
194*ac7df209SYuntao Xu            android:layout_width="wrap_content"
195*ac7df209SYuntao Xu            android:layout_height="wrap_content"
196*ac7df209SYuntao Xu            android:text="@string/radio_mp4"
197*ac7df209SYuntao Xu            android:checked="true" />
198*ac7df209SYuntao Xu
199*ac7df209SYuntao Xu          <RadioButton
200*ac7df209SYuntao Xu            android:id="@+id/radio_webm"
201*ac7df209SYuntao Xu            android:layout_width="wrap_content"
202*ac7df209SYuntao Xu            android:layout_height="wrap_content"
203*ac7df209SYuntao Xu            android:text="@string/radio_webm" />
204*ac7df209SYuntao Xu
205*ac7df209SYuntao Xu        </RadioGroup>
206*ac7df209SYuntao Xu
207*ac7df209SYuntao Xu        <View
208*ac7df209SYuntao Xu            android:id="@+id/horizontal_rule_2"
209*ac7df209SYuntao Xu            android:layout_width="fill_parent"
210*ac7df209SYuntao Xu            android:layout_height="1dip"
211*ac7df209SYuntao Xu            android:layout_marginBottom="@dimen/horiz_rule_btm_margin"
212*ac7df209SYuntao Xu            android:layout_marginTop="@dimen/horiz_rule_top_margin"
213*ac7df209SYuntao Xu            android:background="@color/horiz_rule_color" />
214*ac7df209SYuntao Xu
215*ac7df209SYuntao Xu        <TextView
216*ac7df209SYuntao Xu            android:id="@+id/capture_result_info_label"
217*ac7df209SYuntao Xu            android:layout_width="wrap_content"
218*ac7df209SYuntao Xu            android:layout_height="wrap_content"
219*ac7df209SYuntao Xu            android:layout_weight="1"
220*ac7df209SYuntao Xu            android:text="@string/capture_result_prompt"
221*ac7df209SYuntao Xu            android:textAppearance="?android:attr/textAppearanceSmall" />
222*ac7df209SYuntao Xu
223*ac7df209SYuntao Xu    </LinearLayout>
224*ac7df209SYuntao Xu  </ScrollView>
225*ac7df209SYuntao Xu
226*ac7df209SYuntao Xu</LinearLayout>
227