回答編集履歴
1
コードを追加
answer
CHANGED
@@ -1,9 +1,21 @@
|
|
1
1
|
多分、大きなTextureを作り過ぎてRaspberryPiの能力の限界に達したんじゃないかと思います。結果1はもちろん結果2もそれを思わせるので。
|
2
2
|
|
3
|
-
Labelは内部で文字列の描かれたTextureを作るのですが、既定ではそのTextureは文字列が収まるだけの最小限の大きさになってます。ただtext_sizeが指定されているとTextureの大きさはその値に必ず従います。なので
|
3
|
+
`Label`は内部で文字列の描かれたTextureを作るのですが、既定ではそのTextureは文字列が収まるだけの最小限の大きさになってます。ただ`text_size`が指定されているとTextureの大きさはその値に必ず従います。なので`text_size: self.size`は`Label`の大きさと同じ大きさでTextureを作るよう指示した事になります。そして`Label`の大きさなんですが、プログラムをFullscreenで実行しているならおそらくRaspberryPiのDisplayと同じになっているので、結果RaspberryPiのDisplayと同じ大きさのTextureを作るように指示した事になり、能力の限界に達したと私は考えてます。
|
4
4
|
|
5
|
-
self.width,None
|
5
|
+
`self.width,None`で上手くいったのも、これによってTextureの高さが文字列が収まる最小限の大きさになり、RaspberryPiの限界に達しなくなったと考えるとつじつまが合います。
|
6
6
|
|
7
7
|
|
8
8
|
|
9
|
-
もしLabelの文字列の位置揃えをしたいが為にtext_sizeをいじっているのならやめた方がいい
|
9
|
+
もし`Label`の文字列の位置揃えをしたいが為に`text_size`をいじっているのならやめた方がいいかもしれません。上に書いたように無駄に大きなTextureを作ってしまうので。代わりに以下の様に`Label`を`AnchorLayout`の中に入れるのをお薦めします。
|
10
|
+
|
11
|
+
```
|
12
|
+
FloatLayout:
|
13
|
+
AnchorLayout:
|
14
|
+
anchor_x: 'right'
|
15
|
+
anchor_y: 'center'
|
16
|
+
Label:
|
17
|
+
size: self.texture_size
|
18
|
+
size_hint: None, None
|
19
|
+
font_size: 24
|
20
|
+
text: 'Ver0.0.1'
|
21
|
+
```
|