سؤال

أريد إنشاء تطبيق Cocoa مع قائمة الإدخالات مشابهة جدا لقائمة ToDDO بالأشياء "انظر screencast.). السؤال هو ما إذا كان يجب أن تستخدم

  1. طاولة
  2. مجموعة Collection أو
  3. WebView.

أعتقد أنه يمكن أن يعمل مع كلهم، ولكن أي واحد يناسب المتطلبات التالية أفضل؟

  • لديك قائمة بالإدخالات -> 1 عمود وكثير من الصفوف
  • إعادة ترتيب مع السحب والإفلات
  • حدد إدخالات واحدة واستخدام مفاتيح الإجراءات مثل حذف
  • افتح إدخالا: يجب أن يتوسع الصف لإظهار المزيد من حقول الإدخال
  • مطلقة مخصصة: زوايا مدورة، الظل، التدرج الخلفية

حتى الآن تقول بحثي أن الجدولفيو لديه معظم الوظائف، ولكن يصعب تخصيصه في مظهره، لا يحتوي CollectionView على السحب والإفلات (أليس كذلك؟) ولكن من السهل التصميم وسيأخذ جهود الويب الكثير من الجهد حتى لا إيذاء تجربة المستخدم ولا يمكنني ربط النموذج الخاص بي مباشرة إلى حقول الإدخال.

ما هي إيجابيات وسلبيات أنا أفتقد وماذا تنصح استخدامها؟

هل كانت مفيدة؟

المحلول

WebView لا معنى له. قد تقوم أيضا بإنشاء تطبيق ويب إذا كنت تستخدم WebView. nscolletionview هو أكثر بالنسبة للشبكة مثل البيانات، مثل قوائم التلفزيون في الساعة.

nstableview هو الوحيد الذي منطقي في هذه الحالة. لقد قمت بتطبيق جميع النقاط الرصاصة الخمسة مع مع إصدار NSTABLE دون إصدار. تحتاج إلى تمديد NSTableView والقيام ببعض الرسم المخصص للمظهر المخصص. هذا هو الجزء الأصعب.

نصائح أخرى

  • افتح إدخالا: يجب أن يتوسع الصف لإظهار المزيد من حقول الإدخال

تحتاج إلى ذلك عرض المخطط التفصيلي. وبعد عرض الجدول هو لقوائم مسطحة.

لاحظ أن NSOutLineView هو فئة فرعية من nSTableView، لذلك تعمل جميع ميزات عرض الطاولة على عرض مخطط تفصيلي أيضا.

هناك أشخاص قاموا بذلك بالفعل. واحد كنت قد استخدمته بنجاح من ماتيو بيرتزي وهو متاح هنا: http://th30z.netsons.org/2009/03/cocoa-sidaybar-with-badges-take-2/ قد يستغرق قليل التدليك للحصول عليه للعمل بشكل صحيح (خاصة إذا كنت بحاجة إلى سلوك مجمع السحب والإفلات)، ولكن بالنسبة للوظائف الأساسية، مثل الحصول على عناوين القسم والعناصر في القائمة، فإنه يعمل بشكل ممتاز.

تحرير: هذا لديه تعال من قبل وهو سؤال شائع على قائمة البريد الإلكتروني Cocoa-Dev. فيما يلي بعض الخيارات الأخرى.

فقط ألقي نظرة على الأشياء .APP نفسها باستخدام "F-Script في أي مكان".

لقد استخدموا فئة فرعية من NSTABLEVIVEN المسمى "DefactionTableView" الذي يقدم العناصر التي يمكن تصنيعها مكثف. تنفذ بنود Todo المنهارة باستخدام خلية مخصصة تسمى "ToDocell"، ولكن النظرة الموسعة التي تحصل عليها عند التحرير مثيرة للاهتمام. في هذه الحالة، لديهم عرض مخصص يسمى "ToDoEditView" الذي يتم إدراجه كشروع فرعي للخطوة الفرعية أظن أن طريقة عرض التحرير يتم إضافة مؤقتا كإضافة فرعية في الموقع الصحيح، ويتم تغيير حجم الصف المقابل من TableView مؤقتا أثناء وجوده.

كل المضاربة جميلة .. أحب أن أعرف تفاصيل كيف تم ذلك. انها ui رهيبة.

أقترب من نفس المشكلة في تطبيقي (مع قائمة واحدة كبيرة مماثلة لأشياء LODO قائمة) وأعتقد أن عرض الجدول سيؤدي إلى معنى كبير هنا.

تتوسع الحيلة الخلايا الخاصة بك ("الصفوف") عند النقر المزدوج. هذا عن كل التقدم الذي أحرزته حتى الآن.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top