2013

Dec

3

Av

Visst har man alltid önskat att FileMaker Go var mer likt riktiga appar i iOS! Nu med FileMaker 13 skulle jag vilja påstå att vi kommit bra mycket närmare app-känsla än tidigare. Vi kan använda oss av de fantastiska layoutobjekten “Flytande fönster” samt “Glidkontroll“. Vi kan även använda två-fingers svep för att bläddra mellan poster samt få mer kontroll på inmatning med speciella tangentbord för t ex nummer eller e-post.

Här kommer ett tips för att ytterligare få den där iOS-känslan, nämligen möjligheten att svepa till vänster för att få fram en knapp att radera en rad i en lista med.

Skapa en ny glidkontroll genom att välja verktyget för Glidkontroll i verktygsraden.

Glidkontroll
Markera kontrollen och sätt alla ”Padding” till 0 i Granskaren.

Padding

Ge glidkontrollens panel ett (av tre) objektnamn i Granskarens flik “Position”. Kalla den ”Osynlig”.

Osynlig

Gör samma sak med panel nummer två men kalla den i stället ”Synlig”.

Skapa en knapp som du döper till “Radera” samt kopplar till följande manus, “Radera post”:

If [ Get ( Postnummer ) = $$Postnummer ]
	Radera post/sökpost [ Ingen dialogruta ]
End If
Gå till objekt [ Objektnamn: "Osynlig" ]

Manuset raderar posten, fast endast om postnumret motsvarar det som finns i den globala variabeln för att till sist gömma panelen med knappen i.

Gör ett manus, ”Göm knapp”, för att dölja knappen när någon annan post väljs:

Gå till objekt [ Objektnamn: "Osynlig" ]

Koppla manuset till manusutlösaren ”VidPostLäsIn” för layouten.

VidPostLasIn

Skapa ytterligare ett manus, ”Byt panel”, med följande manussteg:

If [ GetAsNumber(Get ( UtlösareMålPanel) ) = 2 ]
	Ange variabel [ $$Postnummer; Värde:Get ( Postnummer ) ]
End If
If [ GetAsNumber(Get ( UtlösareMålPanel) ) = 3 ]
	Utför manus [ “Göm knapp” ]
	Gå till objekt [ Objektnamn: "Synlig" ]
	Ange variabel [ $$Postnummer; Värde:Get ( Postnummer ) ]
	Avsluta manus [ Resultat: 0 ]
End If

Ovanstående manus ser till att den globala variabeln sätts med det aktuella postnumret i tabellen, samt att om man försöker svepa på en annan post, att radera-knappen visas där i stället.

Välj glidkontrollen och koppla manuset till att köras när du byter mellan paneler med kommandot Ställ in manusutlösare som du hittar i menyn Utforma.

VidPanelVaxla
Markera knappen och ställ in Villkorlig formatering i menyn Utforma

Villkorlig

Eftersom glidkontrollens panel byts för alla poster om vi sveper den, måste vi se till att endast aktuell posts knapp syns. Det är det som ovanstående villkorliga utformning fixar.

Dubbelklicka på glidkontrollen och kryssa ur ”Visa navigeringspunkter”.

Anpassa glidkontrollen så att den är ca dubbelt så bred som knappen och så att den får plats på huvudelen i listan i höjdled. Lägg in knappen så att den hamnar i den högra delen av panel nummer två i glidkontrollen.

Sätt bakgrund på knappen till “Inget” samt linje till “Inget”. Sätt färgen på texten till samma färg som bakgrunden på huvuddelen.

Sätt även bakgrunden på glidkontrollens panel och linje till ”Inget” för att inte glidkontrollen i sig ska synas.

IngenBakgrund

Se till att glidkontrollen ligger som översta objekt i layouten.

Ladda över databasen till din iOS-enhet och testa! Det ska fungera som i videon:



Lycka till!

Ladda ner exempelfil: SvepRaderaiGo.zip

 

Skriv en kommentar

  • (will not be published)
  • − one = 3

Läs också: