2016-08-04 2 views
3

Моих UIActivityViewController представляет изображение с текстом под ней:Удалить разрыв строки в UIActivityViewController

let objectsToShare: [AnyObject] = [anImage, someText] 
let activityVC = UIActivityViewController(activityItems: objectsToShare, applicationActivities: nil) 

Это добавление нежелательного разрыва строки в между изображением и текстом, когда общий (красное выделение):

unwanted UIActivityViewController line break

Есть ли способ его удалить? FYI someText не имеет в нем жестких разрывов строк. Я беспристрастен к ответу Objective-C или Swift.

+0

Похоже на то, как Apple думает, что это правильно, и, скорее всего, изменить это поведение невозможно. Во всяком случае, удача в поиске ответа или обходного пути! – wirrwarr

+0

Просто выстрел в темноте. Вы пробовали отрицательное значение позиции Y для «someText». Я знаю, что он немного взломан, но это может сработать. –

ответ

2

Поскольку вы не имеете никакого контроля над рендерингом деятельности, только поставляя их, у вас нет контроля над дополнением, которое размещается между содержимым и действиями.

Я бы объяснил моему дизайнеру/клиенту/боссу, что он, к сожалению, не под вашим контролем, и напишите rdar, если вы действительно думаете, что это то, над чем вы должны иметь контроль (я не думаю, что это так, лично) ,

Hacky и вообще не рекомендуется ... Поскольку UIActivityViewController является UIViewController, вы могли бы, я полагаю, подкласс и перебирать подвидов в .view этого объекта, чтобы найти правильный вид/ограничение и отрегулируйте его самостоятельно, но это действительно не то, что я бы приблизился, даже если моя работа зависела от него. Он так много думает о том, как Apple реализовала эту иерархию представлений, что вы являетесь заложником удачи, что она не сработает в любом будущем обновлении iOS, где Apple может решить переделать этот класс.

Смежные вопросы