Thanks. So as long as I have only one instance of NewCell (or whatever I call 
it) in the storyboard, Xcode will automatically find it, right? Is the 
column.identifier important? Well, I know it's important, but how does the 
string it contains relate to the type of cell? I'll have a guess: the class 
type is newClass, and Xcode locates that automatically. The column identifier 
is for making sure the right type of view is used in multi-column tables. Had 
this been a table with three columns, I'd want the identifier for each header 
cell to be unique, letting the function use NewClass as the type and the column 
identifier to know what should go where. Presumably, I could use different 
views for different columns, in which case I'd have to use an if or a switch to 
check which column was being used? This is all getting clearer, but I'm still 
missing something.
> On Aug 30, 2015, at 10:06 AM, Barry Hadder <bhad...@gmail.com> wrote:
> 
> If you are using a custom class, you set the class of the tableCellView in IB 
> in the identity inspector.  To find it in the outline, expand the tableview 
> and then the table column.
> After you design the cellView by adding elements and laying them out, you 
> will need to connect them to outlets in your custom class.
> 
> In your code, newCell needs to be the type of your custom class.  For example:
>               let newCell : customClass = 
> tableView.makeViewWithIdentifier(tableColumn!.identifier, owner:self) as! 
> customClass
> 
> The code you wrote should work, but will load a default cell.
> 
> 
> On Aug 29, 2015, at 9:38 PM, Alex Hall <mehg...@icloud.com 
> <mailto:mehg...@icloud.com>> wrote:
> 
> It can be, or you can use one of the pre-configured cells Apple provides. The 
> part I'm stuck on is how to tell Xcode that the cell I made--subclass or 
> default--is the one I want it to use to populate my table. There's a method 
> for it, and clearly I'm supposed to give it a string (as column.identifier) 
> which refers to my class. I'm just unsure where my class should live, and how 
> to set the identifier in IB in the first place. Here's the method:
> 
>       func tableView(tableView: NSTableView, viewForTableColumn tableColumn: 
> NSTableColumn?, row: Int) -> NSView? {
>               let 
> newCell:NSTableCellView=tableView.makeViewWithIdentifier(tableColumn!.identifier,
>  owner:self) as! NSTableCellView
>               newCell.textField!.stringValue=modelArray[row]
>               return(newCell)
>       }
> 
>> On Aug 29, 2015, at 10:12 PM, Jonathan C. Cohn <jon.c.c...@gmail.com 
>> <mailto:jon.c.c...@gmail.com>> wrote:
>> 
>> Would it just be a subclass?
>> 
>> 
>> Jonathan Cohn 
>> 
>>> On Aug 29, 2015, at 8:43 PM, Alex Hall <mehg...@icloud.com 
>>> <mailto:mehg...@icloud.com>> wrote:
>>> 
>>> Don't ask me how, but I think I have it working. My raining question is: 
>>> how do you create, then use, a custom cell view? I'm using the default one 
>>> now, which is just a text field, and that's all I need for the moment. In 
>>> general, though, how would I go about making a custom cell view and then 
>>> using it?
>>>> On Aug 29, 2015, at 7:47 PM, Alex Hall <mehg...@icloud.com 
>>>> <mailto:mehg...@icloud.com>> wrote:
>>>> 
>>>> One more update. I tried connecting my outlet, not to the table inside my 
>>>> view, but to the table in the clip view in the table in the view… If that 
>>>> makes sense. :) It suddenly started working, and now I have a table with 
>>>> two rows, just as my model specifies. The only problem is that these rows 
>>>> are showing text of "Table View Cell", rather than the text I want. 
>>>> Clearly, I'm missing something important about making custom cells (this 
>>>> is a view-based table, not a cell-based table, by the way). Still, we're 
>>>> getting there, i think.
>>>>> On Aug 29, 2015, at 7:43 PM, Alex Hall <mehg...@icloud.com 
>>>>> <mailto:mehg...@icloud.com>> wrote:
>>>>> 
>>>>> Thanks, see below.
>>>>>> On Aug 29, 2015, at 7:35 PM, Yuma Decaux <jamy...@gmail.com 
>>>>>> <mailto:jamy...@gmail.com>> wrote:
>>>>>> 
>>>>>> Hi Alex,
>>>>>> 
>>>>>> Just to clarify, can you answer thee following:
>>>>>> 1-are you using a custom NStableCell to populate your NSTableView, and 
>>>>>> how are you calling NSTableViewCell through your delegate protocol?
>>>>> I'm creating the cell in my table delegate, but honestly I'm not clear on 
>>>>> the process. I know I should create a cell somewhere and set it up how I 
>>>>> want each row to look, but just how to do that is where I'm not following 
>>>>> the (visual) instructions I've found online. Right now, my tableView 
>>>>> method in the delegate/data source class just generates a new cell and 
>>>>> returns it, having set its stringValue attribute to the corresponding 
>>>>> item in the model's array. I have no idea if that'll actually work or not.
>>>>> 
>>>>>> 2-Are you using a subclass of NSTableView or are you using the .nib 
>>>>>> reference for your custom cell?
>>>>> I just put an NSTableView object from the library into my view, like 
>>>>> normal. In it I see a clip view, two scrollers, and a table header view. 
>>>>> The clip view appears to hold my actual table, which is quite confusing 
>>>>> as no instructions online mention this clip view at all, let alone that 
>>>>> it holds the actual table.
>>>>> 
>>>>>> 
>>>>>> This might help me understand better the issue.
>>>>>> 
>>>>>> Cheers,
>>>>>> 
>>>>>> 
>>>>>> 
>>>>>>> On 30/08/2015, at 9:30 AM, Alex Hall <mehg...@icloud.com 
>>>>>>> <mailto:mehg...@icloud.com>> wrote:
>>>>>>> 
>>>>>>> Quick update. I changed the class of my outlet to NSScrollView, and 
>>>>>>> things connected straight away. I changed it back to NSTableView, and 
>>>>>>> the connection persisted. I'm now seeing a blank window (save the usual 
>>>>>>> Close and Minimize buttons) in my app, with no sign of the text field 
>>>>>>> and table I've added. I have no clue why my connection suddenly worked, 
>>>>>>> or why nothing is showing. In future, should I connect to something 
>>>>>>> other than the table view in the outline? Perhaps the table inside the 
>>>>>>> clip view?
>>>>>>>> On Aug 29, 2015, at 6:11 PM, Alex Hall <mehg...@icloud.com 
>>>>>>>> <mailto:mehg...@icloud.com>> wrote:
>>>>>>>> 
>>>>>>>> Hi all,
>>>>>>>> Sorry to post this here, but it's the only place I know of where a few 
>>>>>>>> blind Xcode users might see it. Please respond off-list to 
>>>>>>>> mehg...@icloud.com <mailto:mehg...@icloud.com>. Thanks.
>>>>>>>> 
>>>>>>>> I'm using Xcode 7 beta 6, and I have a table in a Mac app. The table 
>>>>>>>> was connected to an IBOutlet and showed as "connected in the ruler, 
>>>>>>>> then I was trying to put a cell in it to use as a data source view and 
>>>>>>>> it wasn't working. I eventually tried moving the table to the cell, 
>>>>>>>> rather than the cell to the table, and that's when my connection broke.
>>>>>>>> 
>>>>>>>> I have since tried re-connecting it several times, and have even 
>>>>>>>> deleted the table and added a new one. Nothing, though, seems to work. 
>>>>>>>> I have no idea why, as the process I'm using has worked consistently 
>>>>>>>> for months. Strangely, when I run the app, it runs, but focus never 
>>>>>>>> switches to it. If I command-tab to it, VoiceOver says the app's name, 
>>>>>>>> but I still seem to be in Xcode. Before, I could see an empty table, 
>>>>>>>> just as I'd expect, along with the other buttons and such in my app.  
>>>>>>>> None of this craziness happened until after the connection broke, and 
>>>>>>>> the only warnings I see are for some layout ambiguities. If anyone can 
>>>>>>>> suggest what I am doing wrong, or how to fix this perplexing problem, 
>>>>>>>> I'd be very grateful. Thanks in advance.
>>>>>>>> 
>>>>>>>> --
>>>>>>>> Have a great day,
>>>>>>>> Alex Hall
>>>>>>>> mehg...@icloud.com <mailto:mehg...@icloud.com>
>>>>>>>> 
>>>>>>> 
>>>>>>> 
>>>>>>> --
>>>>>>> Have a great day,
>>>>>>> Alex Hall
>>>>>>> mehg...@icloud.com <mailto:mehg...@icloud.com>
>>>>>>> 
>>>>>>> -- 
>>>>>>> You received this message because you are subscribed to the Google 
>>>>>>> Groups "MacVisionaries" group.
>>>>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>>>>> an email to macvisionaries+unsubscr...@googlegroups.com 
>>>>>>> <mailto:macvisionaries+unsubscr...@googlegroups.com>.
>>>>>>> To post to this group, send email to macvisionaries@googlegroups.com 
>>>>>>> <mailto:macvisionaries@googlegroups.com>.
>>>>>>> Visit this group at http://groups.google.com/group/macvisionaries 
>>>>>>> <http://groups.google.com/group/macvisionaries>.
>>>>>>> For more options, visit https://groups.google.com/d/optout 
>>>>>>> <https://groups.google.com/d/optout>.
>>>>>> 
>>>>>> -- 
>>>>>> You received this message because you are subscribed to the Google 
>>>>>> Groups "MacVisionaries" group.
>>>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>>>> an email to macvisionaries+unsubscr...@googlegroups.com 
>>>>>> <mailto:macvisionaries+unsubscr...@googlegroups.com>.
>>>>>> To post to this group, send email to macvisionaries@googlegroups.com 
>>>>>> <mailto:macvisionaries@googlegroups.com>.
>>>>>> Visit this group at http://groups.google.com/group/macvisionaries 
>>>>>> <http://groups.google.com/group/macvisionaries>.
>>>>>> For more options, visit https://groups.google.com/d/optout 
>>>>>> <https://groups.google.com/d/optout>.
>>>>> 
>>>>> 
>>>>> --
>>>>> Have a great day,
>>>>> Alex Hall
>>>>> mehg...@icloud.com <mailto:mehg...@icloud.com>
>>>>> 
>>>> 
>>>> 
>>>> --
>>>> Have a great day,
>>>> Alex Hall
>>>> mehg...@icloud.com <mailto:mehg...@icloud.com>
>>>> 
>>> 
>>> 
>>> --
>>> Have a great day,
>>> Alex Hall
>>> mehg...@icloud.com <mailto:mehg...@icloud.com>
>>> 
>>> -- 
>>> You received this message because you are subscribed to the Google Groups 
>>> "MacVisionaries" group.
>>> To unsubscribe from this group and stop receiving emails from it, send an 
>>> email to macvisionaries+unsubscr...@googlegroups.com 
>>> <mailto:macvisionaries+unsubscr...@googlegroups.com>.
>>> To post to this group, send email to macvisionaries@googlegroups.com 
>>> <mailto:macvisionaries@googlegroups.com>.
>>> Visit this group at http://groups.google.com/group/macvisionaries 
>>> <http://groups.google.com/group/macvisionaries>.
>>> For more options, visit https://groups.google.com/d/optout 
>>> <https://groups.google.com/d/optout>.
>> 
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "MacVisionaries" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to macvisionaries+unsubscr...@googlegroups.com 
>> <mailto:macvisionaries+unsubscr...@googlegroups.com>.
>> To post to this group, send email to macvisionaries@googlegroups.com 
>> <mailto:macvisionaries@googlegroups.com>.
>> Visit this group at http://groups.google.com/group/macvisionaries 
>> <http://groups.google.com/group/macvisionaries>.
>> For more options, visit https://groups.google.com/d/optout 
>> <https://groups.google.com/d/optout>.
> 
> 
> --
> Have a great day,
> Alex Hall
> mehg...@icloud.com <mailto:mehg...@icloud.com>
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "MacVisionaries" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to macvisionaries+unsubscr...@googlegroups.com 
> <mailto:macvisionaries+unsubscr...@googlegroups.com>.
> To post to this group, send email to macvisionaries@googlegroups.com 
> <mailto:macvisionaries@googlegroups.com>.
> Visit this group at http://groups.google.com/group/macvisionaries 
> <http://groups.google.com/group/macvisionaries>.
> For more options, visit https://groups.google.com/d/optout 
> <https://groups.google.com/d/optout>.
> 
> Barry Hadder
> bhad...@gmail.com <mailto:bhad...@gmail.com>
> 
> 
> 
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "MacVisionaries" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to macvisionaries+unsubscr...@googlegroups.com 
> <mailto:macvisionaries+unsubscr...@googlegroups.com>.
> To post to this group, send email to macvisionaries@googlegroups.com 
> <mailto:macvisionaries@googlegroups.com>.
> Visit this group at http://groups.google.com/group/macvisionaries 
> <http://groups.google.com/group/macvisionaries>.
> For more options, visit https://groups.google.com/d/optout 
> <https://groups.google.com/d/optout>.


--
Have a great day,
Alex Hall
mehg...@icloud.com

-- 
You received this message because you are subscribed to the Google Groups 
"MacVisionaries" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to macvisionaries+unsubscr...@googlegroups.com.
To post to this group, send email to macvisionaries@googlegroups.com.
Visit this group at http://groups.google.com/group/macvisionaries.
For more options, visit https://groups.google.com/d/optout.

Reply via email to