Appkompatibilität auf mehreren Geräten gewährleisten

  • Antworten:7
Florian S.
  • Forum-Beiträge: 71

25.03.2014, 19:01:36 via Website

Hallo,
ich habe eine App entwickelt, die auf meinem S2 wunderbar läuft, auf anderen Geräten aber nicht richtig angezeigt wird. Kann ich das irgendwie erreichen, dass im Prinzip der komplette Bildschirminhalt so skaliert wird, dass der Bildschirm des alternativen Gerätes ausgefüllt ist, also dass die Grafiken richtig angezeigt werden, sprich dass sich der Bildschirminhalt an die Größe des jeweiligen Displays anpasst?

LG
Florian

Antworten
impjor
  • Forum-Beiträge: 1.793

25.03.2014, 20:28:23 via App

Das sollte eigentlich kein Problem sein und automatisch gehen, wenn du kein AbsoluteLayout benutzt... Du kannst auch verschiedene Layouts in die verschiedenen layout-xxxx Ordner legen.

Liebe Grüße impjor.

Für ein gutes Miteinander: Unsere Regeln
Apps für jeden Einsatzzweck
Stellt eure App vor!

Antworten
Florian S.
  • Forum-Beiträge: 71

25.03.2014, 20:36:27 via Website

Sind alles RelativeLayouts, funktioniert aber nicht.. Ich habe es mir auch gedacht, dass es irgendwie gehen muss, aber tut es leider nicht.. Vielleicht liegt es daran, dass ich viele ImageViews nebeneinander habe und die Bilder die in den ImageViews drin sind ja eine bestimmte Größe (bei mir 55*55px) haben?
Jedenfalls wird immer quasi nur der Ausschnitt angezeigt, sogroß wie es eben ist, also wenn ich beispielsweise die Vorschau für ein 10,1" Tablet anzeigen lasse, ist gerade mal der linke Teil vom Bildschirm gefüllt..
Woran kanns liegen?

LG

Antworten
impjor
  • Forum-Beiträge: 1.793

25.03.2014, 21:14:27 via App

Dann ist dein Layout-Code nicht in Ordnung. Die Bilder sind auch nicht 55x55px groß, da sie Android automatisch auf anderen Bildschirmen anders skaliert. (Bildschirm mit weniger dpi = Bild wird "kleiner" von Pixelanzahl, bei größerer dpi = Bild wird "größer" von Pixelanzahl).

Liebe Grüße impjor.

Für ein gutes Miteinander: Unsere Regeln
Apps für jeden Einsatzzweck
Stellt eure App vor!

Antworten
Florian S.
  • Forum-Beiträge: 71

25.03.2014, 21:20:28 via Website

Hm, wurde fast alles über die UI erzeugt, also weiß ich nich, was ich falsch gemacht haben könnte...
Hier mal der Code der layout.xml

1<?xml version="1.0" encoding="utf-8"?>
2<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
3 android:id="@+id/RelativeLayout1"
4 android:layout_width="match_parent"
5 android:layout_height="match_parent"
6 android:background="@drawable/background"
7 android:orientation="vertical" >
8
9 <ImageView
10 android:id="@+id/ImageView01"
11 android:layout_width="wrap_content"
12 android:layout_height="wrap_content"
13 android:layout_alignParentBottom="true"
14 android:layout_alignParentLeft="true"
15 android:src="@drawable/volcano_stone_big"
16 android:contentDescription="@string/test"/>
17
18 <ImageView
19 android:id="@+id/ImageView02"
20 android:layout_width="wrap_content"
21 android:layout_height="wrap_content"
22 android:layout_alignParentBottom="true"
23 android:layout_toRightOf="@+id/ImageView01"
24 android:src="@drawable/volcano_stone_big" />
25
26 <ImageView
27 android:id="@+id/ImageView03"
28 android:layout_width="wrap_content"
29 android:layout_height="wrap_content"
30 android:layout_alignParentBottom="true"
31 android:layout_toRightOf="@+id/ImageView02"
32 android:src="@drawable/volcano_stone_big" />
33
34 <ImageView
35 android:id="@+id/ImageView04"
36 android:layout_width="wrap_content"
37 android:layout_height="wrap_content"
38 android:layout_alignParentBottom="true"
39 android:layout_toRightOf="@+id/ImageView03"
40 android:src="@drawable/volcano_stone_big" />
41
42 <ImageView
43 android:id="@+id/ImageView05"
44 android:layout_width="wrap_content"
45 android:layout_height="wrap_content"
46 android:layout_alignParentBottom="true"
47 android:layout_toRightOf="@+id/ImageView04"
48 android:src="@drawable/volcano_stone_big" />
49
50 <ImageView
51 android:id="@+id/ImageView06"
52 android:layout_width="wrap_content"
53 android:layout_height="wrap_content"
54 android:layout_alignParentBottom="true"
55 android:layout_toRightOf="@+id/ImageView05"
56 android:src="@drawable/volcano_stone_big" />
57
58 <ImageView
59 android:id="@+id/ImageView07"
60 android:layout_width="wrap_content"
61 android:layout_height="wrap_content"
62 android:layout_alignParentBottom="true"
63 android:layout_toRightOf="@+id/ImageView06"
64 android:src="@drawable/volcano_stone_big" />
65
66 <ImageView
67 android:id="@+id/ImageView08"
68 android:layout_width="wrap_content"
69 android:layout_height="wrap_content"
70 android:layout_alignParentBottom="true"
71 android:layout_toRightOf="@+id/ImageView07"
72 android:src="@drawable/volcano_stone_big" />
73
74 <ImageView
75 android:id="@+id/ImageView09"
76 android:layout_width="wrap_content"
77 android:layout_height="wrap_content"
78 android:layout_alignParentBottom="true"
79 android:layout_toRightOf="@+id/ImageView08"
80 android:src="@drawable/volcano_stone_big" />
81
82 <ImageView
83 android:id="@+id/ImageView10"
84 android:layout_width="wrap_content"
85 android:layout_height="wrap_content"
86 android:layout_alignParentBottom="true"
87 android:layout_toRightOf="@+id/ImageView09"
88 android:src="@drawable/volcano_stone_big" />
89
90 <ImageView
91 android:id="@+id/ImageView11"
92 android:layout_width="wrap_content"
93 android:layout_height="wrap_content"
94 android:layout_alignParentBottom="true"
95 android:layout_toRightOf="@+id/ImageView10"
96 android:src="@drawable/volcano_stone_big" />
97
98 <ImageView
99 android:id="@+id/ImageView12"
100 android:layout_width="wrap_content"
101 android:layout_height="wrap_content"
102 android:layout_alignParentBottom="true"
103 android:layout_toRightOf="@+id/ImageView11"
104 android:src="@drawable/volcano_stone_big" />
105
106 <ImageView
107 android:id="@+id/ImageView13"
108 android:layout_width="wrap_content"
109 android:layout_height="wrap_content"
110 android:layout_alignParentBottom="true"
111 android:layout_toRightOf="@+id/ImageView12"
112 android:src="@drawable/volcano_stone_big" />
113
114 <ImageView
115 android:id="@+id/ImageView16"
116 android:layout_width="wrap_content"
117 android:layout_height="wrap_content"
118 android:layout_above="@+id/ImageView01"
119 android:layout_toRightOf="@+id/ImageView01"
120 android:src="@drawable/volcano_stone_big" />
121
122 <ImageView
123 android:id="@+id/ImageView17"
124 android:layout_width="wrap_content"
125 android:layout_height="wrap_content"
126 android:layout_above="@+id/ImageView02"
127 android:layout_toRightOf="@+id/ImageView02"
128 android:src="@drawable/volcano_stone_big" />
129
130 <ImageView
131 android:id="@+id/ImageView18"
132 android:layout_width="wrap_content"
133 android:layout_height="wrap_content"
134 android:layout_above="@+id/ImageView04"
135 android:layout_alignLeft="@+id/ImageView04"
136 android:src="@drawable/volcano_stone_big" />
137
138 <ImageView
139 android:id="@+id/ImageView19"
140 android:layout_width="wrap_content"
141 android:layout_height="wrap_content"
142 android:layout_above="@+id/ImageView04"
143 android:layout_toRightOf="@+id/ImageView04"
144 android:src="@drawable/volcano_stone_big" />
145
146 <ImageView
147 android:id="@+id/ImageView20"
148 android:layout_width="wrap_content"
149 android:layout_height="wrap_content"
150 android:layout_above="@+id/ImageView05"
151 android:layout_toRightOf="@+id/ImageView05"
152 android:src="@drawable/volcano_stone_big" />
153
154 <ImageView
155 android:id="@+id/ImageView21"
156 android:layout_width="wrap_content"
157 android:layout_height="wrap_content"
158 android:layout_above="@+id/ImageView06"
159 android:layout_toRightOf="@+id/ImageView06"
160 android:src="@drawable/volcano_stone_big" />
161
162 <ImageView
163 android:id="@+id/ImageView22"
164 android:layout_width="wrap_content"
165 android:layout_height="wrap_content"
166 android:layout_above="@+id/ImageView08"
167 android:layout_toLeftOf="@+id/ImageView09"
168 android:src="@drawable/volcano_stone_big" />
169
170 <ImageView
171 android:id="@+id/ImageView23"
172 android:layout_width="wrap_content"
173 android:layout_height="wrap_content"
174 android:layout_above="@+id/ImageView09"
175 android:layout_toLeftOf="@+id/ImageView10"
176 android:src="@drawable/volcano_stone_big" />
177
178 <ImageView
179 android:id="@+id/ImageView24"
180 android:layout_width="wrap_content"
181 android:layout_height="wrap_content"
182 android:layout_above="@+id/ImageView10"
183 android:layout_toLeftOf="@+id/ImageView11"
184 android:src="@drawable/volcano_stone_big" />
185
186 <ImageView
187 android:id="@+id/ImageView25"
188 android:layout_width="wrap_content"
189 android:layout_height="wrap_content"
190 android:layout_alignTop="@+id/ImageView24"
191 android:layout_toRightOf="@+id/ImageView24"
192 android:src="@drawable/volcano_stone_big" />
193
194 <ImageView
195 android:id="@+id/ImageView26"
196 android:layout_width="wrap_content"
197 android:layout_height="wrap_content"
198 android:layout_above="@+id/ImageView11"
199 android:layout_toRightOf="@+id/ImageView11"
200 android:src="@drawable/volcano_stone_big" />
201
202 <ImageView
203 android:id="@+id/ImageView27"
204 android:layout_width="wrap_content"
205 android:layout_height="wrap_content"
206 android:layout_above="@+id/ImageView12"
207 android:layout_toRightOf="@+id/ImageView12"
208 android:src="@drawable/volcano_stone_big" />
209
210 <ImageView
211 android:id="@+id/ImageView28"
212 android:layout_width="wrap_content"
213 android:layout_height="wrap_content"
214 android:layout_above="@+id/ImageView13"
215 android:layout_toRightOf="@+id/ImageView13"
216 android:src="@drawable/volcano_stone_big" />
217
218 <ImageView
219 android:id="@+id/ImageView14"
220 android:layout_width="wrap_content"
221 android:layout_height="wrap_content"
222 android:layout_alignLeft="@+id/ImageView28"
223 android:layout_alignParentBottom="true"
224 android:src="@drawable/volcano_stone_big" />
225
226 <ImageView
227 android:id="@+id/ImageView15"
228 android:layout_width="wrap_content"
229 android:layout_height="wrap_content"
230 android:layout_alignTop="@+id/ImageView16"
231 android:layout_toLeftOf="@+id/ImageView16"
232 android:src="@drawable/volcano_stone_big" />
233
234 <TextView
235 android:id="@+id/textView3"
236 android:layout_width="wrap_content"
237 android:layout_height="wrap_content"
238 android:layout_alignParentLeft="true"
239 android:layout_alignParentTop="true"
240 android:text="@string/Runde"
241 android:textAppearance="?android:attr/textAppearanceMedium"
242 android:textSize="30sp" />
243
244 <TextView
245 android:id="@+id/round_view"
246 android:layout_width="wrap_content"
247 android:layout_height="wrap_content"
248 android:layout_alignParentTop="true"
249 android:layout_toRightOf="@+id/textView3"
250 android:text="Medium Text"
251 android:textAppearance="?android:attr/textAppearanceMedium"
252 android:textSize="30sp" />
253
254 <TextView
255 android:id="@+id/points_view"
256 android:layout_width="wrap_content"
257 android:layout_height="wrap_content"
258 android:layout_alignParentRight="true"
259 android:layout_alignParentTop="true"
260 android:text="Medium Text"
261 android:textAppearance="?android:attr/textAppearanceMedium"
262 android:textSize="30sp" />
263
264 <TextView
265 android:id="@+id/showHighScore"
266 android:layout_width="wrap_content"
267 android:layout_height="wrap_content"
268 android:layout_alignParentTop="true"
269 android:layout_toRightOf="@+id/ImageView21"
270 android:text="@string/Punkte"
271 android:textAppearance="?android:attr/textAppearanceMedium"
272 android:textSize="30sp" />
273
274 <ImageView
275 android:id="@+id/HalfView1"
276 android:layout_width="wrap_content"
277 android:layout_height="wrap_content"
278 android:layout_alignParentBottom="true"
279 android:layout_alignParentRight="true"
280 android:src="@drawable/volcano_stone_half" />
281
282 <ImageView
283 android:id="@+id/spielfigur"
284 android:layout_width="wrap_content"
285 android:layout_height="wrap_content"
286 android:layout_above="@+id/ImageView16"
287 android:layout_toLeftOf="@+id/ImageView16"
288 android:src="@drawable/player" />
289
290 <ImageView
291 android:id="@+id/spikes"
292 android:layout_width="wrap_content"
293 android:layout_height="wrap_content"
294 android:layout_alignParentTop="true"
295 android:layout_toLeftOf="@+id/ImageView23"
296 android:src="@drawable/spikes" />
297
298 <ImageView
299 android:id="@+id/spikes2"
300 android:layout_width="wrap_content"
301 android:layout_height="wrap_content"
302 android:layout_alignParentTop="true"
303 android:layout_toRightOf="@+id/ImageView25"
304 android:src="@drawable/spikes" />
305
306 <TextView
307 android:id="@+id/countdown"
308 android:layout_width="wrap_content"
309 android:layout_height="wrap_content"
310 android:layout_alignLeft="@+id/ImageView21"
311 android:layout_below="@+id/round_view"
312 android:layout_marginTop="46dp"
313 android:text="3"
314 android:textColor="@color/lightblue"
315 android:textSize="100sp" />
316
317 <ImageView
318 android:id="@+id/HalfView2"
319 android:layout_width="wrap_content"
320 android:layout_height="wrap_content"
321 android:layout_alignParentRight="true"
322 android:layout_below="@+id/spielfigur"
323 android:src="@drawable/volcano_stone_half" />
324
325</RelativeLayout>

Antworten
impjor
  • Forum-Beiträge: 1.793

25.03.2014, 21:34:10 via App

Das sieht eigentlich i.O. aus. Wenn die ImageViews dir zu klein sind, kannst du entsprechende weight - Werte hinzufügen.

Liebe Grüße impjor.

Für ein gutes Miteinander: Unsere Regeln
Apps für jeden Einsatzzweck
Stellt eure App vor!

Antworten
Florian S.
  • Forum-Beiträge: 71

26.03.2014, 07:14:21 via App

Das Problem ist ja, dass sie auf meinem Handy korrekt und passend angezeigt werden also da passt die Größe genau, nur auf anderen Geräten eben nicht...Müsste ich dann für jedes andere Gerät das neu einstellen?

Antworten
Florian S.
  • Forum-Beiträge: 71

27.03.2014, 06:30:41 via App

Hat keiner mehr Ideen und/oder Antworten?

Antworten