Neue Google Now und Google+ Kartenschnittstelle

Google Now und Google+ (Android) nutzen beide eine karteähnliche Oberfläche.

Bildbeschreibung hier eingeben

  • Wie man Fragments Klasse dynamisch ändert
  • Wie aktualisiere ich ViewPager-Inhalte?
  • Wie eine Android-Anwendung auf Dalvik Virtual Machine ausgeführt wird.
  • Wie man Text innerhalb eines Knopfes animiert
  • Wie man das Vektor in der Layer-Liste ohne Skalierung zeichnet
  • Wie man Corner Radius auf LinearLayout anwendet
  • Ich frage mich, ob jemand eine Ahnung hatte, wie diese Schnittstelle auf Android repliziert werden kann.

    Sie haben beide sehr interessante Animationen für die Anzeige neuer Karten zu; Irgendwelche Gedanken wären großartig.

  • Wie bekomme ich aktuelle WiFi-Verbindung info in android
  • Bind / unbind service example (android)
  • Ist es möglich, einen GCM-Empfang von der Befehlszeile adb shell / am zu simulieren? Ich bekomme einen Fehler
  • Android-ADB-Stopp-Anwendungsbefehl wie "force-stop" für nicht verwurzeltes Gerät
  • Merkwürdiges Verhalten mit Android Orientierungssensor
  • Wo ist proguard-rules.txt im Android-Studio?
  • 6 Solutions collect form web for “Neue Google Now und Google+ Kartenschnittstelle”

    Ich habe ein Tutorial auf, wie zu replizieren / erstellen Google Karten Stil Layout hier .

    Schlüsselschritte

    1. Erstellen Sie ein benutzerdefiniertes Layout
    2. Beobachter zum Zeichnen von Kindern hinzufügen
    3. Animierte Wechselkarten

    Heres ein Code-Snippet

    @Override public void onGlobalLayout() { getViewTreeObserver().removeGlobalOnLayoutListener(this); final int heightPx = getContext().getResources().getDisplayMetrics().heightPixels; boolean inversed = false; final int childCount = getChildCount(); for (int i = 0; i < childCount; i++) { View child = getChildAt(i); int[] location = new int[2]; child.getLocationOnScreen(location); if (location[1] > heightPx) { break; } if (!inversed) { child.startAnimation(AnimationUtils.loadAnimation(getContext(), R.anim.slide_up_left)); } else { child.startAnimation(AnimationUtils.loadAnimation(getContext(), R.anim.slide_up_right)); } inversed = !inversed; } } 

    Werfen Sie einen Blick auf http://ryanharter.com/blog/2013/01/31/how-to-make-an-android-card-list/

    Kopie des Beispiels:

    /res/drawable/bg_card.xml:

     <?xml version="1.0" encoding="utf-8"?> <layer-list xmlns:android="http://schemas.android.com/apk/res/android"> <item> <shape android:shape="rectangle" android:dither="true"> <corners android:radius="2dp"/> <solid android:color="#ccc" /> </shape> </item> <item android:bottom="2dp"> <shape android:shape="rectangle" android:dither="true"> <corners android:radius="2dp" /> <solid android:color="@android:color/white" /> <padding android:bottom="8dp" android:left="8dp" android:right="8dp" android:top="8dp" /> </shape> </item> </layer-list> 

    Benutze es als Hintergrund deines Layouts:

     <?xml version="1.0" encoding="utf-8"?> <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="?android:attr/listPreferredItemHeight" android:padding="12dp"> <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent" android:layout_marginLeft="6dp" android:layout_marginRight="6dp" android:layout_marginTop="4dp" android:layout_marginBottom="4dp" android:background="@drawable/bg_card"> <!-- Card Contents go here --> </LinearLayout> </FrameLayout> 

    ==== Start update 2014-09-29 ====

    Verwenden Sie das CardView aus der Google-Kompatibilitätsbibliothek (ab Android 2.1+):

     <!-- A CardView that contains a TextView --> <android.support.v7.widget.CardView xmlns:card_view="http://schemas.android.com/apk/res-auto" android:id="@+id/card_view" android:layout_gravity="center" android:layout_width="200dp" android:layout_height="200dp" card_view:cardCornerRadius="4dp"> <TextView android:id="@+id/info_text" android:layout_width="match_parent" android:layout_height="match_parent" /> </android.support.v7.widget.CardView> 

    Siehe https://developer.android.com/preview/material/ui-widgets.html

    ==== Ende aktualisieren ====

    (Mindestens) zwei Optionen:

    oder

    Siehe https://github.com/afollestad/Cards-UI/wiki/2.-Intro-Tutorial für eine einfache Einführung. Bildbeschreibung hier eingeben

    Ich habe ein sehr ähnliches Layout, das Sie hier betrachten können https://github.com/Nammari/GooglePlusLayout und für eine Video-Demo hier http://youtu.be/jvfDuJz4fw4 für die Animation, die auf Kinder angewendet werden, für weitere Details aussehen Hier http://nammari.tumblr.com/post/41893669349/goolge-plus-layout für einen Blog-Post, der alles verdeutlicht.

    Bildbeschreibung hier eingeben

    Die Karte aussehen und fühlen sollte nicht schwer sein Sie brauchen nur eine ListView ohne Trennwände und Ihre Listenansicht Artikel sollte eine Marge haben.

    So was:

     <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_margin="16dp" android:layout_height="wrap_content" android:background="@android:color/background_light"> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:paddingTop="16dp" android:paddingRight="16dp" android:paddingLeft="16dp" android:text="Title" android:textSize="18dp" android:textColor="@android:color/primary_text_holo_light" /> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:paddingRight="16dp" android:paddingLeft="16dp" android:text="Subtitle" android:textSize="14dp" android:textColor="@android:color/primary_text_holo_light" /> <ImageView android:layout_marginTop="16dp" android:layout_marginBottom="16dp" android:layout_width="fill_parent" android:layout_height="wrap_content" android:background="@drawable/background"/> </LinearLayout> 

    Haben Sie den gleichen Bedarf und haben begonnen, ein bisschen zu untersuchen. Ich habe mich bei der Apktool-Ausgabe beschäftigt, die ich aus der com.google.android.googlequicksearchbox apk bekommen konnte. (Keine Quellen nur die res xmls)

    Dieses Layout (at_place_card.xml) dient zur Anzeige eines Standorts. Es hat drei Textzeilen und zwei Aktionsknöpfe (Details und Checkin) auf der rechten Seite und ein Bild auf der linken Seite.

    Leider bin ich nicht in der Lage, irgendwelche Stilinformationen aus dem apk zu bekommen, also die Schriftgröße, die Abmessungen und die Farben sind nur Vermutungen.

     <?xml version="1.0" encoding="utf-8"?> <LinearLayout android:orientation="horizontal" android:background="@drawable/card_background" android:layout_width="fill_parent" android:layout_height="wrap_content" xmlns:android="http://schemas.android.com/apk/res/android" xmlns:thegoogle="http://schemas.android.com/apk/res/com.google.android.googlequicksearchbox"> <LinearLayout android:orientation="vertical" android:layout_width="0.0dip" android:layout_height="fill_parent" android:baselineAligned="false" android:layout_weight="1.0"> <FrameLayout android:layout_width="fill_parent" android:layout_height="wrap_content"> <LinearLayout android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="wrap_content" style="@style/CardTextBlock"> <TextView android:id="@id/entry_title" android:layout_width="wrap_content" android:layout_height="wrap_content" style="@style/CardTitle" /> <TextView android:id="@id/open_hours" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" style="@style/CardText" /> <TextView android:textColor="@color/card_light_text" android:id="@id/known_for_terms" android:paddingBottom="4.0dip" android:visibility="gone" android:layout_width="wrap_content" android:layout_height="wrap_content" android:maxLines="4" style="@style/CardText" /> </LinearLayout> <ImageButton android:layout_gravity="top|right|center" android:id="@id/card_menu_button" android:layout_width="@dimen/card_action_button_height" android:layout_height="@dimen/card_action_button_height" android:contentDescription="@string/accessibility_menu_button" style="@style/CardMenuButton" /> </FrameLayout> <Space android:layout_width="fill_parent" android:layout_height="0.0dip" android:layout_weight="1.0" /> <Button android:id="@id/details_button" android:visibility="gone" android:layout_width="fill_parent" android:layout_height="@dimen/card_action_button_height" android:text="@string/more_details" android:drawableLeft="@drawable/ic_action_pin" style="@style/CardActionButtonWithIcon" /> <Button android:id="@id/checkin_button" android:layout_width="fill_parent" android:layout_height="@dimen/card_action_button_height" android:text="@string/check_in" android:drawableLeft="@drawable/ic_action_check_in" style="@style/CardActionButtonWithIcon" /> </LinearLayout> <com.google.android.velvet.ui.CrossfadingWebImageView android:id="@id/place_photo" android:visibility="gone" android:layout_width="0.0dip" android:layout_height="fill_parent" android:scaleType="centerCrop" android:adjustViewBounds="true" android:baselineAligned="false" android:minHeight="@dimen/at_place_card_content_height" android:layout_weight="1.0" android:contentDescription="@string/at_place_card_image_desc" thegoogle:crossfadeDuration="@integer/image_crossfade_duration" /> </LinearLayout> 

    Update: War in der Lage, einige Stilinformationen auch jetzt zu bekommen. Wenn Sie hier interessiert sind, ist eine Zip-Datei mit den Informationen, die ich derzeit habe (einige Ressourcen-Dateien von Google jetzt). https://dl.dropbox.com/u/4379928/android/googlenow2.zip

    Das Android ist ein Google Android Fan-Website, Alles ├╝ber Android Phones, Android Wear, Android Dev und Android Spiele Apps und so weiter.