คำถามติดแท็ก android-5.0-lollipop

Android Lollipop เดิมมีชื่อว่า "Android L" แสดงครั้งแรกที่ Google I / O 2014 ชื่อสุดท้ายได้รับการยืนยันในวันที่ 15 ตุลาคม รองรับ API ระดับ 21

11
ฉันจะเปลี่ยนสีข้อความปุ่มเริ่มต้นใน Android 5 ได้อย่างไร
ฉันมีกล่องโต้ตอบการแจ้งเตือนมากมายในแอพของฉัน เป็นเค้าโครงเริ่มต้น แต่ฉันเพิ่มปุ่มบวกและลบในกล่องโต้ตอบ ดังนั้นปุ่มจะได้รับสีข้อความเริ่มต้นของ Android 5 (สีเขียว) ฉันพยายามเปลี่ยนมันโดยไม่ประสบความสำเร็จ ความคิดใด ๆ วิธีการเปลี่ยนสีของข้อความนั้น? กล่องโต้ตอบที่กำหนดเองของฉัน: public class MyCustomDialog extends AlertDialog.Builder { public MyCustomDialog(Context context,String title,String message) { super(context); LayoutInflater inflater = (LayoutInflater) context.getSystemService( Context.LAYOUT_INFLATER_SERVICE ); View viewDialog = inflater.inflate(R.layout.dialog_simple, null, false); TextView titleTextView = (TextView)viewDialog.findViewById(R.id.title); titleTextView.setText(title); TextView messageTextView = (TextView)viewDialog.findViewById(R.id.message); messageTextView.setText(message); this.setCancelable(false); this.setView(viewDialog); …

9
วิธี _really_ เปลี่ยนสีหลักและสีใน Android Lollipop โดยทางโปรแกรมอย่างไร
ก่อนอื่นคำถามนี้ถามคำถามที่คล้ายกันมาก อย่างไรก็ตามคำถามของฉันมีความแตกต่างเล็กน้อย สิ่งที่ฉันอยากรู้คือมันเป็นไปได้หรือไม่ที่จะเปลี่ยนcolorPrimaryคุณลักษณะของธีมเป็นสีโดยพลการหรือไม่? ตัวอย่างเช่นเรามี: <style name="AppTheme" parent="android:Theme.Material.Light"> <item name="android:colorPrimary">#ff0000</item> <item name="android:colorAccent">#ff0000</item> </style> เมื่อรันไทม์ผู้ใช้ตัดสินใจว่าเขาต้องการใช้#ccffffเป็นสีหลัก แน่นอนไม่มีวิธีที่ฉันสามารถสร้างชุดรูปแบบสำหรับสีที่เป็นไปได้ทั้งหมด ฉันไม่รังเกียจถ้าฉันต้องทำเรื่องแฮ็กเช่นอาศัยการทำงานส่วนตัวของ Android ตราบใดที่มันใช้งาน SDK สาธารณะ เป้าหมายของฉันคือในที่สุดก็มีActionBar และวิดเจ็ตทั้งหมดเช่น a CheckBoxเพื่อใช้สีหลักนี้

7
เปลี่ยนสีแถบสถานะด้วย AppCompat ActionBarActivity
Paletteหนึ่งในกิจกรรมของฉันฉันเปลี่ยนสีโดยใช้แถบเครื่องมือ แต่ใน 5.0 อุปกรณ์ที่ใช้สีเป็นสีของฉันในชุดรูปแบบกิจกรรมของฉันเพื่อให้ฉันมี 2 สีที่แตกต่างกันมากและมันก็ไม่ได้ดูดีActionBarActivitystatus barcolorPrimaryDark ฉันรู้ว่าใน 5.0 คุณสามารถใช้Window.setStatusBarColor()แต่ActionBarActivityไม่มีสิ่งนี้ ดังนั้นคำถามของฉันคือ 5.0 ฉันจะเปลี่ยนสีของแถบสถานะได้ActionBarActivityอย่างไร

16
Lollipop: วาดด้านหลัง StatusBar โดยตั้งค่าสีเป็นโปร่งใส
ฉันได้ตั้งค่าสถานะแถบสีเป็นโปร่งใสสำหรับ Lollipop เฉพาะกับบรรทัดต่อไปนี้ในธีมของฉัน: <item name="android:statusBarColor">@android:color/transparent</item> ตอนนี้ฉันต้องการวาดมัน แต่ฉันไม่สามารถรับมุมมองใด ๆ ที่อยู่เบื้องหลังมัน ฉันรู้ว่าต้องทำอย่างไรกับwindowTranslucentStatusคุณสมบัตินี้ แต่ไม่ต้องการใช้คุณสมบัตินี้เนื่องจากจะไม่สนใจสีของสถานะที่บาร์ตั้งค่าเป็นโปร่งใส

8
ทำความเข้าใจกับ RecyclerView setHasFixedSize
setHasFixedSize()ฉันมีบางอย่างที่เข้าใจปัญหา ฉันรู้ว่ามันถูกใช้เพื่อการเพิ่มประสิทธิภาพเมื่อขนาดของRecyclerViewไม่เปลี่ยนแปลงจากเอกสาร นั่นหมายความว่าอย่างไร? ในกรณีส่วนใหญ่ListViewมักจะมีขนาดคงที่ ในกรณีใดบ้างที่จะไม่เป็นขนาดคงที่? หมายความว่าอสังหาริมทรัพย์ที่มีอยู่บนหน้าจอเติบโตขึ้นพร้อมกับเนื้อหาหรือไม่?

7
Android lollipop เปลี่ยนสีของแถบนำทาง
ในแอพของฉันฉันต้องเปลี่ยนสีแถบนำทางด้านล่าง ฉันดูโพสต์มากมาย แต่ไม่พบวิธีแก้ปัญหา ฉันใช้ไลบรารี appCompat V21 / styles.xml <style name="AppTheme" parent="Theme.AppCompat.Light"> <item name="android:windowBackground">@drawable/bgpreview</item> <item name="android:colorPrimary">@color/MyColor</item> <item name="android:colorPrimaryDark">@color/MyColor</item> <item name="android:windowContentOverlay">@null</item> <item name="android:textColorPrimary">@color/MyColor</item> <item name="colorAccent">@color/MyColor</item> <!-- darker variant for the status bar and contextual app bars --> <item name="android:windowContentTransitions">true</item> <item name="android:windowAllowEnterTransitionOverlap">true</item> <item name="android:windowAllowReturnTransitionOverlap">true</item> <item name="android:windowSharedElementEnterTransition">@android:transition/move</item> <item name="android:windowSharedElementExitTransition">@android:transition/move</item> <item name="windowActionBar">false</item> <item name="android:textAllCaps">false</item> </style>

18
เปลี่ยนสีพื้นหลังของ CardView โดยทางโปรแกรม
CardViewมีแอตทริบิวต์card_view:cardBackgroundColorการกำหนดสีพื้นหลัง แอตทริบิวต์นี้ใช้งานได้ดี ในขณะเดียวกันก็ไม่มีวิธีการเปลี่ยนสีแบบไดนามิก ฉันเพิ่งลองวิธีแก้ปัญหาเช่น: mCardView.setBackgroundColor(...); หรือใช้ Layout ภายใน cardView <android.support.v7.widget.CardView> <LinearLayout android:id="@+id/inside_layout"> </android.support.v7.widget.CardView> View insideLayout = mCardView.findViewById(R.id.inside_layout); cardLayout.setBackgroundColor(XXXX); โซลูชันเหล่านี้ใช้ไม่ได้เนื่องจากการ์ดมี cardCornerRadius

6
สีของไอคอนแถบสถานะ Android
ฉันสงสัยว่าเป็นไปได้ไหมที่จะเปลี่ยนสีไอคอนแถบสถานะ( ไม่ใช่สีของแถบสถานะcolorPrimaryDark) สมมติว่าฉันต้องการแถบสถานะนี้ด้วย: <item name="colorPrimaryDark">@android:color/white</item> และไอคอนเป็นสีดำเป็นไปได้ไหม? ขอบคุณ แก้ไข: ใหม่ในตัวอย่างนักพัฒนา M: windowLightStatusBar การพลิกสิ่งนี้ในธีมของคุณจะบอกให้ระบบใช้ฉากหน้ามืดซึ่งมีประโยชน์สำหรับแถบสถานะที่มีสีอ่อนกว่า โปรดทราบว่าการแสดงตัวอย่าง M ดูเหมือนจะมีข้อบกพร่องโดยที่ไอคอนการแจ้งเตือนยังคงเป็นสีขาวในขณะที่ไอคอนสถานะของระบบจะเปลี่ยนเป็นสีดำแบบกึ่งโปร่งใสอย่างถูกต้อง จาก: Roman Nurik โพสต์ Google+

7
ฉันจะป้องกันไม่ให้แถบสถานะและแถบนำทางเคลื่อนไหวในระหว่างการเปลี่ยนภาพเคลื่อนไหวของฉากกิจกรรมได้อย่างไร
ประการแรกพื้นหลังแถบสถานะของฉันถูกตั้งค่าเป็นสีน้ำตาลเข้มและพื้นหลังแถบนำทางของฉันเป็นสีดำเริ่มต้น ฉันใช้ธีมแสงวัสดุ ฉันกำลังเริ่มกิจกรรมใหม่โดยใช้ActivityOptions.makeSceneTransitionAnimationการเปลี่ยนค่าเริ่มต้นและฉันสังเกตเห็นว่าทั้งสถานะและแถบการนำทางจะจางเป็นสีขาวสั้น ๆ แล้วกลับไปเป็นสีที่ถูกต้อง ตามเอกสาร : เพื่อให้ได้ผลเต็มที่ของการเปลี่ยนแปลงคุณต้องเปิดใช้งานการเปลี่ยนเนื้อหาของหน้าต่างทั้งในกิจกรรมการโทรและที่เรียก มิฉะนั้นกิจกรรมการโทรจะเริ่มการเปลี่ยนการออก แต่จากนั้นคุณจะเห็นการเปลี่ยนหน้าต่าง (เช่นขนาดหรือจาง) ฉันใช้getWindow().requestFeature(Window.FEATURE_CONTENT_TRANSITIONS);ทั้งกิจกรรมการโทรและการโทร ในทำนองเดียวกันถ้าฉันเปลี่ยนการเปลี่ยน Enter เป็นสไลด์ทั้งสถานะและแถบนำทางชั่วครู่จะมีการเปลี่ยนสไลด์ที่มีพื้นหลังสีขาว ฉันจะป้องกันไม่ให้แถบสถานะและแถบนำทางเคลื่อนไหวในระหว่างการเปลี่ยนภาพเคลื่อนไหวของฉากกิจกรรมได้อย่างไร

13
Android 5.0 - เพิ่มส่วนหัว / ส่วนท้ายให้กับ RecyclerView
ฉันใช้เวลาสักครู่ในการพยายามหาวิธีเพิ่มส่วนหัวให้กับ a RecyclerViewไม่สำเร็จ นี่คือสิ่งที่ฉันได้รับจนถึงตอนนี้: @Override protected void onCreate(Bundle savedInstanceState) { ... layouManager = new LinearLayoutManager(getActivity()); recyclerView.setLayoutManager(layouManager); LayoutInflater inflater = (LayoutInflater) getActivity().getSystemService(Context.LAYOUT_INFLATER_SERVICE); headerPlaceHolder = inflater.inflate(R.layout.view_header_holder_medium, null, false); layouManager.addView(headerPlaceHolder, 0); ... } LayoutManagerดูเหมือนว่าจะจัดการวัตถุจำหน่ายของRecyclerViewรายการ ขณะที่ผมไม่สามารถหาใด ๆaddHeaderView(View view)วิธีฉันตัดสินใจที่จะไปกับLayoutManager's addView(View view, int position)วิธีการและเพื่อเพิ่มมุมมองที่ส่วนหัวของฉันในตำแหน่งแรกที่จะทำหน้าที่เป็นส่วนหัว และนี่คือสิ่งที่น่าเกลียด: java.lang.NullPointerException: Attempt to read from field 'android.support.v7.widget.RecyclerView$ViewHolder android.support.v7.widget.RecyclerView$LayoutParams.mViewHolder' on a null …

10
CardView layout_width =“ match_parent” ไม่ตรงกับความกว้างของ RecyclerView หลัก
ฉันมีส่วนที่มี RecyclerView พร้อม layout_width = "match_parent": <android.support.v7.widget.RecyclerView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_gravity="center" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity$PlaceholderFragment" /> รายการใน RecyclerView คือ CardView ที่มี layout_width = "match_parent": <android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:card_view="http://schemas.android.com/apk/res-auto" android:id="@+id/card_view" android:layout_gravity="center" android:layout_width="match_parent" android:layout_height="match_parent" android:layout_margin="20dp" card_view:cardCornerRadius="4dp"> <TextView android:layout_gravity="center" android:id="@+id/info_text" android:layout_width="match_parent" android:gravity="center" android:layout_height="match_parent" android:textAppearance="?android:textAppearanceLarge"/> </android.support.v7.widget.CardView> ฉันขยายมุมมองรายการดังต่อไปนี้: public MyAdapter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) …

17
CardView ไม่แสดง Shadow ใน Android L
My Cardview ภายใน Listview ไม่แสดงเงาใน Android L (Nexus 5) นอกจากนี้ขอบกลมยังแสดงไม่ถูกต้อง นี่คือรหัสสำหรับมุมมองอะแดปเตอร์ของ Listview: <?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" xmlns:card_view="http://schemas.android.com/apk/res-auto" xmlns:app="http://schemas.android.com/apk/res/com.example.myapp" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="vertical" > <android.support.v7.widget.CardView xmlns:card_view="http://schemas.android.com/apk/res-auto" android:id="@+id/card_view" android:layout_width="match_parent" android:layout_height="wrap_content" app:cardBackgroundColor="@android:color/white" android:foreground="?android:attr/selectableItemBackground" app:cardCornerRadius="4dp" app:cardElevation="4dp" > <RelativeLayout android:layout_width="match_parent" android:layout_height="match_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingTop="@dimen/activity_vertical_margin" > <TextView android:id="@+id/tvName" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentTop="true" android:layout_marginTop="@dimen/padding_small" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:textAppearance="?android:attr/textAppearanceLarge" /> <ImageView …

3
จะใช้ API การเข้าถึงการ์ด SD ใหม่ที่นำเสนอสำหรับ Android 5.0 (Lollipop) ได้อย่างไร
พื้นหลัง บนAndroid 4.4 (KitKat) Google ได้ให้การเข้าถึงการ์ด SD ค่อนข้าง จำกัด ในฐานะของ Android Lollipop (5.0) นักพัฒนาสามารถใช้ API ใหม่ที่ขอให้ผู้ใช้ยืนยันเพื่อให้สามารถเข้าถึงโฟลเดอร์ที่เฉพาะเจาะจงตามที่เขียนไว้ในโพสต์นี้ของ Google Groups ปัญหา โพสต์นี้แนะนำให้คุณเยี่ยมชมเว็บไซต์สองแห่ง: https://android.googlesource.com/platform/development/+/android-5.0.0_r2/samples/Vault/src/com/example/android/vault/VaultProvider.java#258 นี่ดูเหมือนตัวอย่างภายใน (อาจจะแสดงในการสาธิต API ในภายหลัง) แต่มันค่อนข้างยากที่จะเข้าใจว่าเกิดอะไรขึ้น http://developer.android.com/reference/android/support/v4/provider/DocumentFile.html นี่เป็นเอกสารอย่างเป็นทางการของ API ใหม่ แต่ไม่ได้บอกรายละเอียดเกี่ยวกับวิธีการใช้งานเพียงพอ นี่คือสิ่งที่จะบอกคุณ: หากคุณต้องการเข้าถึงแผนผังย่อยทั้งหมดของเอกสารจริงๆให้เริ่มด้วยการเรียกใช้ ACTION_OPEN_DOCUMENT_TREE เพื่อให้ผู้ใช้เลือกไดเร็กทอรี จากนั้นส่ง getData () ที่เป็นผลลัพธ์ไปยัง fromTreeUri (Context, Uri) เพื่อเริ่มทำงานกับทรีที่ผู้ใช้เลือก ในขณะที่คุณสำรวจโครงสร้างของอินสแตนซ์ DocumentFile คุณสามารถใช้ getUri () เพื่อรับ Uri …

13
การสร้างหน้าจอการตั้งค่าด้วยการสนับสนุนแถบเครื่องมือ (v21)
ฉันประสบปัญหาในการใช้แถบเครื่องมือดีไซน์ Material ใหม่ในไลบรารีการสนับสนุนบนหน้าจอการตั้งค่า ฉันมีไฟล์ settings.xml ดังต่อไปนี้: <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"> <PreferenceCategory android:title="@string/AddingItems" android:key="pref_key_storage_settings"> <ListPreference android:key="pref_key_new_items" android:title="@string/LocationOfNewItems" android:summary="@string/LocationOfNewItemsSummary" android:entries="@array/new_items_entry" android:entryValues="@array/new_item_entry_value" android:defaultValue="1"/> </PreferenceCategory> </PreferenceScreen> สตริงถูกกำหนดไว้ที่อื่น

3
NameNotFoundException webview
ฉันได้รับข้อผิดพลาดจาก Crashlytics ซึ่งบ่งชี้ว่าอุปกรณ์บางอย่างไม่มี com.google.android.webview มันเป็นไปได้อย่างไร? java.lang.RuntimeException: Unable to start activity ComponentInfo{com.myapp.app/com.myapp.ReaderActivity}: android.view.InflateException: Binary XML file line #29: Error inflating class com.myapp.MyWebView at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2298) at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360) at android.app.ActivityThread.access$800(ActivityThread.java:144) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278) at android.os.Handler.dispatchMessage(Handler.java:102) at android.os.Looper.loop(Looper.java:135) at android.app.ActivityThread.main(ActivityThread.java:5221) at java.lang.reflect.Method.invoke(Method.java) at java.lang.reflect.Method.invoke(Method.java:372) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694) Caused by: android.view.InflateException: Binary XML file line …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.