2015-01-08 4 views
0

ListProperty()에 최고 기록을 저장했으며 그 목록에서 kv 파일 (아래 코드)의 색인으로 항목을 가져 오려고합니다. "목록 색인이 범위를 벗어났습니다."라는 말을 계속합니다.ListProperty item by kv

평 파일 :

scores = ListProperty() 

.kv 파일 : 나는 [1] 인덱스 부분을 제거하고 단지 STR (root.scores)가있는 경우

Label: 
    text: str(root.scores[1]) 

은 완벽하게 전체를 보여줍니다 명부.

답변

1

방금 ​​내가 생각하는 대답을 발견했습니다. 새로운 ListProperty()를 greating 할 때 목록이 얼마나 큰지 알고 있어야합니다. 목록을 사용하여 kv 항목을 액세스 할 수 있어야합니다.

scores = ListProperty([['', 0], ['', 0], ['', 0], ['', 0]]) 

그런 다음이 KV 파일에서 완벽하게 작동 : 그래서 나는대로 ListPropert을 만들 때.

모든 kivy 속성과 함께 사용한다고 가정합니다. 따라서 프리 핸드 속성의 정확한 크기를 알아야합니다.

+2

속성의 정확한 크기를 알 필요는 없지만 kv 규칙이 사용자가 설정 한 기본값으로 적용될 수 있다는 점에 유의하십시오. – inclement