내 응용 프로그램에서 격자 선 접근법을 만들고 사용자가 격자보기를 켜거나 끌 수 있도록하고 싶습니다. 그것은 어떤 종류의 터치 감지 또는 그것에 연관된 논리를 가질 필요가 없습니다. 사용자가보고 켜고 끌 수있는 격자 선. 이에 대한 분명한 해결책은 내보기에 그리드 이미지를 추가하고 필요할 때마다 이미지 뷰를 사용하여 표시하는 것입니다. 하지만 그건 내가 할 수없는 선택입니다. 나는 그것을 프로그래밍 방식으로해야만한다. 시간 내 줘서 고마워. 내가 구현하려고하는 것의 image. 어떤 아이디어? 코어 그래픽 또는 많은 uiviews?격자 선 만들기 및 사용자가 격자 선보기 켜기/끄기 허용
2
A
답변
1
:
self.view.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"sample.png"]];
1
UIView를 서브 클래스 화하고 여기에 별도의 2 개의 루프를 만듭니다. 하나는 수직선 용이고 다른 하나는 수평선 용입니다. 수직선 루프에서 UIView의 1px 너비와 768px 높이를 만듭니다. 수평으로 1px 높이 및 1024px 너비로 만듭니다.
숨기고 표시하려면 서브 클래 싱 된보기의 숨김 속성을 YES 또는 NO로 전환하면됩니다.
표준 UIView를 사용하여 서브 클래 싱없이 가능할 수 있습니다. 이를 사용하여 종료
0
내가
class GridView: UIView {
var numberOfColumns: Int = 2
var numberOfRows: Int = 2
var lineWidth: CGFloat = 1.0
var lineColor: UIColor = UIColor.white
override func draw(_ rect: CGRect) {
if let context = UIGraphicsGetCurrentContext() {
context.setLineWidth(lineWidth)
context.setStrokeColor(UIColor.white.cgColor)
let columnWidth = Int(rect.width)/(numberOfColumns + 1)
for i in 1...numberOfColumns {
var startPoint = CGPoint.zero
var endPoint = CGPoint.zero
startPoint.x = CGFloat(columnWidth * i)
startPoint.y = 0.0
endPoint.x = startPoint.x
endPoint.y = frame.size.height
context.move(to: CGPoint(x: startPoint.x, y: startPoint.y))
context.addLine(to: CGPoint(x: endPoint.x, y: endPoint.y))
context.strokePath()
}
let rowHeight = Int(rect.height)/(numberOfRows + 1)
for j in 1...numberOfRows {
var startPoint = CGPoint.zero
var endPoint = CGPoint.zero
startPoint.x = 0.0
startPoint.y = CGFloat(rowHeight * j)
endPoint.x = frame.size.width
endPoint.y = startPoint.y
context.move(to: CGPoint(x: startPoint.x, y: startPoint.y))
context.addLine(to: CGPoint(x: endPoint.x, y: endPoint.y))
context.strokePath()
}
}
}
}
Swift3
이를 사용clear
로의 배경 색상을 설정했습니다. 코드도 존재합니다. here
관련 문제
- 1. MFC에서 속성 격자 만들기
- 2. 동적으로 WPF 격자 만들기
- 3. GTK +에서 격자 만들기
- 4. iPhone - 이미지 격자 목록 만들기
- 5. 코코아를 사용하여 nstable보기에서 가로 격자 선 표시
- 6. PyGTK : GTKTreeView 격자 선 색상 수정
- 7. 파이 게임에서 사각형 격자 만들기
- 8. gwt의 격자 및 버튼
- 9. 격자 표보기
- 10. 파이썬 : 2 차원 격자 그리기 및 셀 착색 허용
- 11. 격자 가로보기
- 12. 살아있는 PDF를 사용하여 격자 표 만들기
- 13. 프로그래밍 방식으로 사용자 지정 요소로 격자 만들기
- 14. WPF 격자 창 레이아웃
- 15. Javascript - 체크 박스 격자?
- 16. 계층 적 격자
- 17. 움직이는 항목이있는 격자
- 18. WPF의 격자 인 UserControl
- 19. wp7에서 격자 셀 확장
- 20. JQ 격자 정렬 정수
- 21. WPF 필터 데이터 격자
- 22. C를 사용하여 격자 선에 문자를 표시하는 방법 #
- 23. 스택 패널과 격자
- 24. Extjs 동적 격자
- 25. RTS 차량 격자 동작
- 26. 유체 격자 레이아웃 jQuery
- 27. extjs 격자 패널
- 28. 일반 데이터 격자 필터링
- 29. wpf의 데이터 격자
- 30. R : 격자 그래픽 타이틀
답장을 보내 주셔서 감사합니다. 예, 쉬운 방법입니다. 업데이트를보세요. 이를 위해 다른 테두리 너비로 적어도 40 uiviews를 만들고이를 배치하는 논리를 구현해야합니까? – Viraj
점선은 아마도 이미지를 사용 하겠지만 네, 그렇게해야 할 것 같습니다. UIView는 매우 단순하므로이 솔루션에는 아무런 문제가 없어야합니다. – margusholland
그래, 문제는 내가 이미지를 사용할 수 없다는 것이다. 대체 솔루션이 필요합니다. – Viraj