Actualmente estoy tratando de aprender un poco de Cacao (con el libro de El cacao de Programación para Mac OS X). En uno de los ejercicios, hemos creado un NSTableView con sólo una columna, para que actúe como una lista de las cosas.

Lo que me molesta es que en el Interface Builder, yo no podía encontrar una manera de tener el (único) de la columna de tomar siempre el ancho completo de la NSTableView. Como consecuencia de ello, siempre de alguna manera se ve como hay 2 columnas, pero en realidad hay sólo uno.

Alguna idea ?

InformationsquelleAutor tsimbalar | 2011-09-25

3 Comentarios

  1. 52

    Esto es sólo un IB problema que sucede todo el tiempo (no estoy seguro de por qué). Para solucionar esto, simplemente cambiar el tamaño de la vista de tabla para el tamaño más pequeño que el de la 2ª columna, luego arrastrarlo hasta el tamaño que usted quiere y la 2ª columna desaparecerá.

    • gracias, esto lo soluciona, pero de alguna manera el «redimensionamiento» de la manija todavía está allí. Hay alguna manera de deshacerse de él ? ACTUALIZACIÓN : OK me pareció, simplemente marcar la casilla «Oculto» en el Encabezado lo soluciona !
    • Genial! Gracias!
    • Yo tenía el mismo problema, pero la columna sería sólo se expande a una cierta anchura y, a continuación, detener abruptamente la expansión. Si usted ve este comportamiento, compruebe que el «máximo» ancho de la tabla columna de la vista es algo muy grande, dicen que 100000.
    • esto es válido aún en XCode 6.1, OSX 10.10. Me dejó en el infierno en los últimos dos días.
    • Y todavía no se ha solucionado, esta respuesta es ahora de casi 4 años de edad
    • Reproducible en Xcode 8 en 2016 :-/
    • hahah no puede creer lo que me respondió esto hace 5 años y este error todavía existe en Xcode. Debe ser honestamente una solución rápida, donde la vista de la tabla se regenera a sí mismo al cambiar el número de columnas.
    • omg – sigue siendo válida (2017) – tal vez 6 años no es suficiente para solucionar este problema 🙁

  2. 31

    Aquí es como yo lo hice en Xcode 4.6…

    En IB, seleccione la vista de la tabla e ir a los Atributos del Inspector. Elija ‘Uniforme’ para la ‘Columna de Tamaño’. A continuación, seleccione la columna de la tabla y elija ‘Autoresizes con la Mesa «para » Redimensionar’.

    Estas opciones corresponden a:

    [tableView setColumnAutoresizingStyle:NSTableViewUniformColumnAutoresizingStyle];
    [tableColumn setResizingMask:NSTableColumnAutoresizingMask];
    • +1 yo no sé si la aceptan respuesta obras, pero este seguramente no y parece más adecuada para mí.
    • También se podría tratar de [formato tableview sizeLastColumnToFit];
    • El aceptó la respuesta es también necesario – a veces (tal vez con IB actualizaciones?) la columna termina alrededor de 1 píxel más estrecha de lo que debe ser para AppKit para darse cuenta de que se supone que debe de ocupar todo el ancho de la vista de tabla.
  3. 11

    Tuve que usar ambos pasos – sam respuesta + el comentario por David Douglas.

    [tableView  setColumnAutoresizingStyle:NSTableViewUniformColumnAutoresizingStyle];
    [tableColumn setResizingMask:NSTableColumnAutoresizingMask];
    
     //AND 
     [tableView sizeLastColumnToFit];
    • Obras en XCode 7.1 en OS 10.11 y en swift también:

Dejar respuesta

Please enter your comment!
Please enter your name here