Я попробовал ответ Тибидабо, и он не сработал для меня. Было сказано, что [myCGPointArray objectAtIndex: 0] имеет тип id, поэтому я не могу вызвать CGPointValue для него. гм.
это сработало, однако:
NSArray *points = [NSArray arrayWithObjects:
[NSValue valueWithCGPoint:CGPointMake(5.5, 6.6)],
[NSValue valueWithCGPoint:CGPointMake(7.7, 8.8)],
nil];
NSValue *val = [points objectAtIndex:0];
CGPoint point = [val CGPointValue];
float X = point.x;
NSLog(@"cgpoint value is: %f", X);
или
NSArray *points = [NSArray arrayWithObjects:
[NSValue valueWithCGPoint:CGPointMake(20, 6.6)],
[NSValue valueWithCGPoint:CGPointMake(7.7, 8.8)],
nil];
float xCoordinate = [[points objectAtIndex:0] CGPointValue].x;
Я нашел это здесь: Как можно легко добавить объекты CGPoint в NSArray? , опубликованный Джаррет Харди.
См. https://docs.djangoproject.com/en/stable/ref/templates/builtins/#if : просто используйте, чтобы воспроизвести их пример:
{% if athlete_list %}
Number of athletes: {{ athlete_list|length }}
{% else %}
No athletes.
{% endif %}
Если вы используете последнюю версию Django, список изменений 9530 представил блок {% empty%}, позволяющий писать
{% for athlete in athlete_list %}
...
{% empty %}
No athletes
{% endfor %}
Полезно, когда что-то, что вы хотите to do включает перебор непустого списка.
Список считается Ложным
, если в нем нет элементов, поэтому вы можете сделать что-то вроде этого:
{% if mylist %}
<p>I have a list!</p>
{% else %}
<p>I don't have a list!</p>
{% endif %}