Je voudrais créer une liste de boutons qui dépendent des paramètres pris en charge par le périphérique; Par exemple, si la caméra de l'appareil prend en charge le réglage de la balance des blancs et de l'antibiogramme, les 2 boutons correspondants sont affichés pour permettre à l'utilisateur de modifier ces paramètres; mais si je cours la même application sur un appareil qui ne supporte que le réglage de la balance des blancs, alors un seul bouton est affiché.boutons conditionnés par les paramètres pris en charge
Je sais comment créer une liste de boutons dans le fichier layout .xml et je sais comment tester les paramètres supportés dans le fichier d'activité .java, mais je ne trouve pas de moyen de les relier entre eux .
Toute aide est grandement appréciée.
FWIW, voici les éléments pertinents de mon code jusqu'à présent
activité .JAVA fichier
package com.MyProject;
import java.util.List;
import android.app.Activity;
import android.hardware.Camera;
import android.hardware.Camera.Size;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
public class CameraSettingActivity extends Activity {
private static final String TAG = "CameraSettingActivity";
private Object mCameraView;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.camera_setting);
Camera mCamera = Camera.open();
/* View mCameraView;*/
Camera.Parameters params = mCamera.getParameters();
// Get supported white balance modes
List<String> white_balance = params.getSupportedWhiteBalance();
if (white_balance!=null) {
String mString = white_balance.get(0);
Log.i(TAG, "CAMERA WHITE BALANCE : (" + mString + ")");
}
// Get supported antibanding modes
List<String> antibanding = params.getSupportedAntibanding();
if (antibanding!=null) {
String mString = antibanding.get(0);
Log.i(TAG, "CAMERA ANTIBANDING : (" + mString + ")");
}
mCamera.setParameters(params);
mCamera.release();
}
}
mise en page fichier .xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:gravity="center_vertical|center_horizontal"
android:background="@color/green_background"
>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:gravity="center_vertical|center_horizontal"
android:text="@string/under_construction"
/>
<Button
android:id="@+id/white_balance_button"
android:layout_width="100dip"
android:layout_height="wrap_content"
android:text="@string/white_balance"
/>
<Button
android:id="@+id/antibanding_button"
android:layout_width="100dip"
android:layout_height="wrap_content"
android:text="@string/antibanding"
/>
</LinearLayout>