ปัญหาเกี่ยวกับ Refactor สำหรับ Android studio 3.5


159

ฉันเพิ่งอัปเดตสตูดิโอของฉันด้วย android studio 3.5 และตอนนี้เมื่อฉันพยายามสร้างAndroidManifest.xmlไฟล์อีกครั้ง

มีใครประสบปัญหานี้หรือไม่? มีวิธีแก้ไขปัญหาสำหรับการปรับโครงสร้างใหม่นี้หรือไม่?

ก่อน refactor:

ป้อนคำอธิบายรูปภาพที่นี่

หลังจาก refactor:

ป้อนคำอธิบายรูปภาพที่นี่

มันใช้ได้กับไฟล์โครงการทั้งหมดของฉัน

ทำไมมันสำคัญ:

ป้อนคำอธิบายรูปภาพที่นี่


4
เหตุใดจึงเป็นปัญหาที่ต้องมีวิธีแก้ไขปัญหา
ทิม

13
@TimCastelijns: หากไม่มีสิ่งอื่นใดมันจะส่งเสียงที่ไม่คาดคิดในการควบคุมเวอร์ชัน ฉันไม่สามารถแยกแยะปัญหาที่แท้จริงในอุปกรณ์ Android รุ่นเก่าอย่างที่<uses-permission>เคยต้องปรากฏก่อนหน้า<application>นี้แม้ว่ามันจะเป็นไปได้ที่เป็นปัญหาเครื่องมือเก่าที่เราไม่เห็นในปัจจุบัน
CommonsWare


7
@TimCastelijns ในรูปแบบ xml จะเปลี่ยนลำดับของส่วนประกอบของคุณ (เช่น ImageView ของฉันมาก่อน TextView ของฉันและนั่นไม่ใช่สิ่งที่ฉันต้องการ!)
rcperso

3
พวกเขาเพียงดึงความพยายามทั้งหมดของพวกเขาไปสู่ความมั่นคงด้วย 3.5 ด้วยสิ่งนี้ อาจเป็นข้อผิดพลาด AS ที่เลวร้ายที่สุดนับตั้งแต่มันสามารถทำลายแอปของคุณในเวลาทำงาน: /
Carson Holzheimer

คำตอบ:


240

คุณต้องตั้งค่าเค้าโครง xml สำหรับแอปพลิเคชัน Android จากการตั้งค่า

ทำตามขั้นตอนนี้:

1.ไปที่Android Studio > ค่ากำหนด สำหรับ Windows ให้ไปที่ไฟล์ > การตั้งค่า

ป้อนคำอธิบายรูปภาพที่นี่

2.ค้นหาxmlในแถบค้นหา

ป้อนคำอธิบายรูปภาพที่นี่

3.ภายใต้รูปแบบรหัสให้เลือกXMLแท็บ

ป้อนคำอธิบายรูปภาพที่นี่

4.ที่มุมขวาบนให้คลิกที่ตั้งค่าจาก ...และภายใต้สไตล์ที่กำหนดไว้ล่วงหน้าให้เลือกAndroid

ป้อนคำอธิบายรูปภาพที่นี่

5.คลิกที่นำไปใช้และพยายามที่จะ refactor


5
หลังจากนี้คุณอาจต้องรีสตาร์ท Android Studio
tasomaniac

สิ่งนี้ทำให้ฉันได้รับสิ่งที่ดีที่สุด แต่ฉันคิดว่าปัญหาคือการไม่มีแท็กคุณสมบัติ "แอตทริบิวต์" ในแท็บการจัดการ ดูภาพหน้าจอในคำตอบของฉันเองสำหรับรายละเอียด
Slartibartfast

จากสิ่งที่ฉันสามารถบอกได้ว่าเหตุผลข้อเสนอแนะนี้ทำงานอย่างไรเพราะมันเป็นการแทรกแท็กประเภท "attribute" แม้ว่าจะทำเช่นนั้นด้วยค่าใช้จ่ายในการรีเซ็ตการปรับแต่งอื่น ๆ ที่คุณอาจตั้งค่าไว้ดังนั้นคุณจะต้อง แต่มันใช้งานได้ :)
Slartibartfast

1
ฉันกลัวว่าโซลูชันนี้จะไม่ทำงานในกรณีของฉัน
P Vartak

16

รีเซ็ตสไตล์รหัส Android ที่เหมาะสมดังนี้

สำหรับWindowsเท่านั้น

ขั้นที่ 1:คลิกที่เมนูไฟล์

ขั้นที่ 2:ไปที่การตั้งค่า

ขั้นตอนที่ 3:ค้นหาเครื่องมือแก้ไขในแผงด้านซ้าย **

Step4:ค้นหาStyle Codeในเมนูย่อยของ Editor

Step5:คลิกที่XMLในเมนูย่อยของ Code Style

ขั้นตอนที่ 6:คลิกที่ตั้งจากในมุมบนขวาของแผงด้านขวา

Step7:เลือกรูปแบบที่กำหนดไว้ล่วงหน้า

Step8:เลือกAndroid

ที่ 9:คลิกตกลง

สำหรับmacOSเท่านั้น

ขั้นที่ 1:คลิกที่เมนูAndroid Studio

ขั้นที่ 2:ไปที่การตั้งค่า

ขั้นตอนที่ 3:ค้นหาเครื่องมือแก้ไขในแผงด้านซ้าย **

Step4:ค้นหาStyle Codeในเมนูย่อยของ Editor

Step5:คลิกที่XMLในเมนูย่อยของ Code Style

ขั้นตอนที่ 6:คลิกที่ตั้งจากในมุมบนขวาของแผงด้านขวา

Step7:เลือกรูปแบบที่กำหนดไว้ล่วงหน้า

Step8:เลือกAndroid

ที่ 9:คลิกตกลง


8

ดูเหมือนว่ารูปแบบเริ่มต้นจะออกคุณสมบัติ "แอตทริบิวต์" ในกฎการจัดเรียง เพิ่มพวกเขากลับมาทำงานเหมือนมีเสน่ห์สำหรับฉัน

การแก้ไขสามารถทำได้ใน: การตั้งค่า> ตัวแก้ไข> สไตล์โค้ด> XML ป้อนคำอธิบายรูปภาพที่นี่


5

เพียงเพิ่มรายละเอียดเพิ่มเติม

นี่เป็นปัญหาที่ทราบกันดีของ android studio จาก Android Studio 3.5 Canary 8 มันควรจะได้รับการแก้ไขในรุ่นถัดไปเพราะนี่จะส่งผลต่อนักพัฒนาจำนวนมาก

คุณสามารถดูสถานะของบั๊กได้ที่นี่

อีกทั้งการแก้ปัญหาก็คือ

สไตล์โค้ด XML ที่ใช้งานไม่ได้

เมื่อแก้ไขรหัส XML IDE อาจใช้รูปแบบรหัสที่ไม่ถูกต้องเมื่อคุณเลือกรหัส> เปลี่ยนรูปรหัสจากแถบเมนู หากต้องการแก้ไขปัญหานี้ให้รีเซ็ตสไตล์รหัส Android ที่เหมาะสมดังนี้:

  1. เปิดหน้าต่างการตั้งค่าโดยคลิกไฟล์> การตั้งค่า (บน macOS, Android Studio> การตั้งค่า)
  2. ในแผงด้านซ้ายคลิกตัวแก้ไข> ลักษณะรหัส> XML
  3. ใกล้กับมุมบนขวาของแผงด้านขวาเลือกตั้งจาก> สไตล์ที่กำหนดไว้ล่วงหน้า> Android
  4. คลิกตกลง

พบได้ที่นี่ -> ปัญหาที่ทราบเกี่ยวกับ Android Studio และ Android Gradle Plugin

แก้ไข: ตอนนี้ได้รับการแก้ไขแล้วใน Android studio เวอร์ชัน3.5.2


3
  • ctrl + alt + s
  • ค้นหา XML

ฉันต้องการทำขั้นตอนเดียวกับคำตอบแรก แต่ฉันเพียงต้องการเปลี่ยนรูปแบบเริ่มต้นเป็นโครงการ

ฉันหวังว่าคุณจะแก้ปัญหาด้วยวิธีนี้ ขอโทษด้วยสำหรับภาษาอังกฤษของฉัน!

ป้อนคำอธิบายรูปภาพที่นี่

ป้อนคำอธิบายรูปภาพที่นี่


1

หากคุณกำหนดรูปแบบโค้ดที่กำหนดเองคุณจะต้องระบุประเภทสำหรับแต่ละกฎ: แท็กหรือแอตทริบิวต์

ดูเหมือนว่าหลังจากการอัปเดตหากคุณไม่ได้ระบุประเภทกฎจะถูกนำไปใช้กับทั้งสอง ไม่แน่ใจว่ามันเป็นบั๊กหรือเปล่า แต่นั่นเป็นวิธีที่ฉันแก้ไข

สิ่งนี้ใช้ไม่ได้กับ 3.5

หลังจากเพิ่มประเภทแอตทริบิวต์ให้กับแต่ละกฎแล้วก็จะทำงานได้


1

โปรดทำตามขั้นตอนเหล่านี้สำหรับ "Android Studio 3.5" รุ่น Windows

1: คลิกที่ไฟล์ในเมนู

2: ไปที่การตั้งค่า

ป้อนคำอธิบายรูปภาพที่นี่.

3: คลิกที่ตัวแก้ไข

4: คลิกที่สไตล์รหัส

5: คลิกที่ XML

ป้อนคำอธิบายรูปภาพที่นี่

6: คลิกที่ "Set from ... " ที่มุมบนขวา

7: เลือกสไตล์ที่กำหนดไว้ล่วงหน้า

8: เลือก Android

ป้อนคำอธิบายรูปภาพที่นี่

9: คลิกตกลง


1

3.5.0 ปัญหาที่ทราบ

เมื่อแก้ไขรหัส XML IDE อาจใช้รูปแบบรหัสที่ไม่ถูกต้องเมื่อคุณเลือกรหัส> เปลี่ยนรูปรหัสจากแถบเมนู หากต้องการแก้ไขปัญหานี้ให้รีเซ็ตสไตล์รหัส Android ที่เหมาะสมดังนี้:

  • เปิดหน้าต่างการตั้งค่าโดยคลิกไฟล์> การตั้งค่า (บน macOS, Android Studio> การตั้งค่า )
  • ในแผงด้านซ้ายคลิกEditor> รหัสสไตล์> XML
  • ใกล้มุมขวาบนของแผงด้านขวาเลือกชุดจาก> ที่กำหนดไว้ล่วงหน้าสไตล์> Android
  • คลิกตกลง
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.