자유롭게 질의 및 응답을 할 수 있는 게시판입니다. 개발자 여러분의 답변이 큰 도움이 됩니다.
- 제품설치/등록 오류 문의: 설치/등록 Q&A 이용 (제품 구매 고객 한정)
Delphi XE 10.2 안드로이드 스크롤박스 테스트 버그 문의
2017.12.26 15:14
본 게시판은 개발자들이 자유롭게 질문과 답변을 공유하는 게시판입니다.
* 따라서 최대한 정중하게 질문을 올려 주세요.
* 질문을 상세히 작성해 주실 수록 좋은 답변이 올라 옵니다.
* 다른 분들도 참고할 수 있도록 결과 댓글 필수(또는 감사 댓글)
(결과 댓글을 달지 않는 경우 다음 질문에 대한 답변이 달리지 않는 불이익이 있을 수 있습니다.)
-----------------------------------------------------------------------------------------------
안녕하세요
XE 10.2 안드로이드가 다른 버전보다 버그가 많아 테스트용으로만 사용하고 있습니다.
버그 해결 될때 까지 기다렸는데 XE 10.2.2 에서도 수정이 안되었네요
첨부파일과 같이 스크롤 박스에 체크박스 여러개 만들고 체크를 한 상태에서
스크롤 위아래 움직이면 체크를 하지 않았는데 여러개로 체크된것 처럼 나옵니다.
윈도우에서는 이런 현상은 없지만 안드로이드에서만 발생되는데
버그 해결 하려면 새로고침 하면 될것 같은데 안드로이드에서는 화면 새로고침 어떻게 해야 하나요
댓글 2
-
험프리
2017.12.29 10:25
-
험프리
2017.12.29 16:23
원인을 살펴보니, 스크롤박스 이동 시 체크박스의 TCheckStyleObject가 뒤바뀌는 현상이 발생합니다.
원인은 스타일오브젝트를 가져오는 코드가 잘못되어 있습니다.
관련된 소스코드는 FMX.Controls.pas에 아래와 같습니다.
procedure TStyledControl.ApplyStyleLookup; (FMX.Controls.pas 5732 line)
// 여기에서 잘못된 StyleObject를 찾습니다.
StyleObject := TStyleCache.Current.FindResource(GetDefaultStyleLookupName); (FMX.Controls.pas 5790 line)
InternalApplyStyle(StyleObject); (FMX.Controls.pas 5801 line)
InsertObject(0, StyleControl); (FMX.Controls.pas 5754 line)
해당 이슈는 엠바카데로 측에 레포팅했습니다.
https://quality.embarcadero.com/browse/RSP-19663
우선은 위에서 말씀드린바와 같이 StyleBook을 폼에 올리고 폼의 StyleBook 속성을 지정하시면 됩니다.
해당 이슈는 빨라도 다음 업데이트에 반영될 것으로 보입니다.
——————
답글이 도움이 되셨는지 다른 분들도 참고할 수 있도록 결과 댓글 부탁드립니다.
(결과 댓글이 없는 경우 다른 질문에 대한 답변이 달리지 않는 불이익이 있을 수 있습니다.)
Delphi XE 10.2 안드로이드 스크롤박스 테스트 버그 문의
2017.12.26 15:14
본 게시판은 개발자들이 자유롭게 질문과 답변을 공유하는 게시판입니다.
* 따라서 최대한 정중하게 질문을 올려 주세요.
* 질문을 상세히 작성해 주실 수록 좋은 답변이 올라 옵니다.
* 다른 분들도 참고할 수 있도록 결과 댓글 필수(또는 감사 댓글)
(결과 댓글을 달지 않는 경우 다음 질문에 대한 답변이 달리지 않는 불이익이 있을 수 있습니다.)
-----------------------------------------------------------------------------------------------
안녕하세요
XE 10.2 안드로이드가 다른 버전보다 버그가 많아 테스트용으로만 사용하고 있습니다.
버그 해결 될때 까지 기다렸는데 XE 10.2.2 에서도 수정이 안되었네요
첨부파일과 같이 스크롤 박스에 체크박스 여러개 만들고 체크를 한 상태에서
스크롤 위아래 움직이면 체크를 하지 않았는데 여러개로 체크된것 처럼 나옵니다.
윈도우에서는 이런 현상은 없지만 안드로이드에서만 발생되는데
버그 해결 하려면 새로고침 하면 될것 같은데 안드로이드에서는 화면 새로고침 어떻게 해야 하나요
댓글 2
-
험프리
2017.12.29 10:25
-
험프리
2017.12.29 16:23
원인을 살펴보니, 스크롤박스 이동 시 체크박스의 TCheckStyleObject가 뒤바뀌는 현상이 발생합니다.
원인은 스타일오브젝트를 가져오는 코드가 잘못되어 있습니다.
관련된 소스코드는 FMX.Controls.pas에 아래와 같습니다.
procedure TStyledControl.ApplyStyleLookup; (FMX.Controls.pas 5732 line)
// 여기에서 잘못된 StyleObject를 찾습니다.
StyleObject := TStyleCache.Current.FindResource(GetDefaultStyleLookupName); (FMX.Controls.pas 5790 line)
InternalApplyStyle(StyleObject); (FMX.Controls.pas 5801 line)
InsertObject(0, StyleControl); (FMX.Controls.pas 5754 line)
해당 이슈는 엠바카데로 측에 레포팅했습니다.
https://quality.embarcadero.com/browse/RSP-19663
우선은 위에서 말씀드린바와 같이 StyleBook을 폼에 올리고 폼의 StyleBook 속성을 지정하시면 됩니다.
해당 이슈는 빨라도 다음 업데이트에 반영될 것으로 보입니다.
——————
답글이 도움이 되셨는지 다른 분들도 참고할 수 있도록 결과 댓글 부탁드립니다.
(결과 댓글이 없는 경우 다른 질문에 대한 답변이 달리지 않는 불이익이 있을 수 있습니다.)
(내부적인 사정으로 답변이 늦었습니다.)
알려주신 버그가 저도 발생하네요. 윈도우와 안드로이드에 모두 발생합니다.
내부적인 코드를 살펴보니, 스타일을 이용해 화면에 출력하는 부분에 이슈가 있는 것으로 보입니다.
(아직, 원인을 찾지는 못했습니다.)
임시적인 조치방법은
TStyleBook 컴포넌트를 폼에 올리고, Form의 StyleBook 속성을 위 컴포넌트로 설정하면 위 이슈는 발생하지 않습니다.
자세한 내용은 좀 더 분석 후 안내 드리도록 하겠습니다.
——————
답글이 도움이 되셨는지 다른 분들도 참고할 수 있도록 결과 댓글 부탁드립니다.
(결과 댓글이 없는 경우 다른 질문에 대한 답변이 달리지 않는 불이익이 있을 수 있습니다.)