Bonjour à tous, j'aimerais rajouté dans mon application un niveau à bulle plat. Comme ceci :
Mais je ne sais pas du tout comment faire, pouvez vous m'aider ?
Merci
Bonjour à tous, j'aimerais rajouté dans mon application un niveau à bulle plat. Comme ceci :
Mais je ne sais pas du tout comment faire, pouvez vous m'aider ?
Merci
pourrai tu etre plus clair ?
personnellement je ne voit pas du tout ce dont tu a besoin
Alors simplement une petite bulle comme sur l'image au-dessus. Pour indiquer que le téléphone est bien parallèle au sol.
Je vous copie ce que j'ai mais le textView ne change pas :-(
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109 public class MainActivity extends Activity implements SurfaceHolder.Callback, SensorEventListener{ Camera camera; SurfaceView surfaceView; SurfaceHolder surfaceHolder; boolean previewing = false; TextView tv; private SensorManager mSensorManager; private Sensor mSensor; LayoutInflater controlInflater = null; @SuppressWarnings("deprecation") @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_LANDSCAPE); tv = (TextView) findViewById(R.id.textView1); mSensorManager = (SensorManager) this.getSystemService(Context.SENSOR_SERVICE); getWindow().setFormat(PixelFormat.UNKNOWN); surfaceView = (SurfaceView)findViewById(R.id.camerapreview); surfaceHolder = surfaceView.getHolder(); surfaceHolder.addCallback(this); surfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS); controlInflater = LayoutInflater.from(getBaseContext()); View viewControl = controlInflater.inflate(R.layout.control, null); LayoutParams layoutParamsControl = new LayoutParams(LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT); this.addContentView(viewControl, layoutParamsControl); } @Override public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) { if(previewing){ camera.stopPreview(); previewing = false; } if (camera != null){ try { camera.setPreviewDisplay(surfaceHolder); camera.startPreview(); previewing = true; } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } } } @Override public void onResume(){ super.onResume(); if(mSensor != null){ mSensorManager.registerListener(this, mSensor, SensorManager.SENSOR_DELAY_NORMAL); } } @Override public void onPause() { super.onPause(); mSensorManager.unregisterListener(this, mSensor); } public void surfaceCreated(SurfaceHolder holder) { camera = Camera.open(); } @Override public void surfaceDestroyed(SurfaceHolder holder) { // TODO Auto-generated method stub camera.stopPreview(); camera.release(); camera = null; previewing = false; mSensorManager.unregisterListener(this); super.onStop(); } @Override public void onSensorChanged(SensorEvent event) { {// TODO Auto-generated method stub TextView tv = (TextView) findViewById(R.id.textView1); tv.setText("Orientation X (Roll) :"+ Float.toString(event.values[2]) +"\n"+ "Orientation Y (Pitch) :"+ Float.toString(event.values[1]) +"\n"+ "Orientation Z (Yaw) :"+ Float.toString(event.values[0])); } } public void onAccuracyChanged(Sensor arg0, int arg1) { { // TODO Auto-generated method stub } }
Pour l'instant je cherche juste a intégrer dans un coin de l'écran les axes (X,Y,Z). Mais pas moyen![]()
Partager