Code folding (zuklappen) seltsam

  • Antworten:8
Rainer Unsinn
  • Forum-Beiträge: 28

28.02.2018, 11:52:52 via Website

Liebe alle, ich habe dieses Codefragement in Android Studio:

    btnEnableGps.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            if (tooOld()) {return;}
            handlePermission();
        }
    });

Wenn ich das "zuklappe" - hätte ich erwartet, dass nur die erste Zeile stehenbleibt, aber es bleibt die 1., 4., 5. und letzte Zeile stehen - warum?

— geändert am 28.02.2018, 11:53:51

Kommentieren
swa00
  • Forum-Beiträge: 3.704

28.02.2018, 12:36:02 via Website

Das ist Richtig , denn du hast zwei Funktionen/Instanzen in deinem Body

— geändert am 28.02.2018, 12:37:02

Liebe Grüße - Stefan
[ App - Entwicklung ]

Hilfreich?
Rainer UnsinnPascal P.
Kommentieren
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

28.02.2018, 12:38:12 via App

Hallo Rainer,

genau deswegen nutze ich die region foldings:

 //region myRegionName
 myCodeLines...
 //endregion

Damit kannst du denn den kompletten Bereich einklappen. Gerade bei Klassen mit vielen Methoden finde ich das übersichtlicher.

— geändert am 28.02.2018, 12:38:19

LG Pascal //It's not a bug, it's a feature. :) ;)

Hilfreich?
Rainer Unsinn
Kommentieren
Rainer Unsinn
  • Forum-Beiträge: 28

28.02.2018, 12:40:08 via Website

swa00

Das ist Richtig , denn du hast zwei Funktionen/Instanzen in deinem Body

Naja - das kann man so sehen - aber warum kann ich dann die innere nicht zuklappen?

So, wie es jetzt zugeklappt aussieht, verwirrt die Darstellung eher, als das sie hilft..

— geändert am 28.02.2018, 12:41:46

Hilfreich?
Kommentieren
swa00
  • Forum-Beiträge: 3.704

28.02.2018, 12:41:46 via Website

@Pascal ?

Den kannte ich auch noch nicht :-)

Gibst du mal bitte ein komplettes beispiel ?
Bei mit klappt das nämlich nicht :-)

//region myRegionName
///////////////////////////////////////////////////////////////////////////////
private final BroadcastReceiver mCloseActivityReceiver = new BroadcastReceiver()
{
    @Override
    public void onReceive(Context context, Intent intent)
    {
       LoginScreenActivity.this.finish();
    }
};
//region myRegionName

— geändert am 28.02.2018, 12:42:19

Liebe Grüße - Stefan
[ App - Entwicklung ]

Hilfreich?
Kommentieren
Rainer Unsinn
  • Forum-Beiträge: 28

28.02.2018, 12:43:56 via Website

Pascal P.

Hallo Rainer,

genau deswegen nutze ich die region foldings:

Ok danke - als workaround recht brauchbar!

Hilfreich?
Kommentieren
Rainer Unsinn
  • Forum-Beiträge: 28

28.02.2018, 12:46:34 via Website

swa00

@Pascal ?

Den kannte ich auch noch nicht :-)

Gibst du mal bitte ein komplettes beispiel ?
Bei mit klappt das nämlich nicht :-)

Bei mir klappt es - sofern ich "region" und nicht "Region" schreibe und "endregion" ans Ende.. ;-)

//region aaa
bla
bla
//endregion

— geändert am 28.02.2018, 12:47:48

Hilfreich?
Kommentieren
swa00
  • Forum-Beiträge: 3.704

28.02.2018, 12:48:09 via Website

Alles klar , man (ich) sollte auch die Augen aufmachen und es so umsetzen , wie du es geschrieben hast :-)

Cool, man lernt nie aus - Danke :-)

Liebe Grüße - Stefan
[ App - Entwicklung ]

Hilfreich?
Kommentieren
Pascal P.
  • Admin
  • Forum-Beiträge: 11.286

28.02.2018, 13:00:33 via App

Das gibts seit AS 2.x vorher musste das in XML Syntax kompliziert mit
<editor-fold name="..."> oder so geschrieben werden.

Und dann wurde das so geändert. Ist wohl von Microsoft abgeschaut denn in .Net kann man
#region Name
code
#endregion

verwenden

ist zur Übersicht eigentlich ein gutes Feature.

— geändert am 28.02.2018, 13:08:54

LG Pascal //It's not a bug, it's a feature. :) ;)

Hilfreich?
Rainer Unsinn
Kommentieren