คำถามติดแท็ก ui-thread

22
ไม่สามารถสร้างตัวจัดการภายในเธรดที่ไม่ได้เรียกว่า Looper.prepare ()
ข้อยกเว้นต่อไปนี้หมายความว่าอย่างไร ฉันจะแก้ไขได้อย่างไร นี่คือรหัส: Toast toast = Toast.makeText(mContext, "Something", Toast.LENGTH_SHORT); นี่คือข้อยกเว้น: java.lang.RuntimeException: Can't create handler inside thread that has not called Looper.prepare() at android.os.Handler.<init>(Handler.java:121) at android.widget.Toast.<init>(Toast.java:68) at android.widget.Toast.makeText(Toast.java:231)

12
เราจะใช้ runOnUiThread ใน Android ได้อย่างไร
ฉันใหม่สำหรับ Android และฉันพยายามใช้ UI-Thread ดังนั้นฉันจึงเขียนกิจกรรมทดสอบอย่างง่าย แต่ฉันคิดว่าฉันเข้าใจผิดบางอย่างเพราะเมื่อคลิกปุ่ม - แอพไม่ตอบสนองอีกต่อไป public class TestActivity extends Activity { Button btn; int i = 0; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); btn = (Button)findViewById(R.id.btn); btn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { runThread(); } }); } private void runThread(){ runOnUiThread (new Thread(new …
157 android  ui-thread 

1
การตอบสนองแบบดั้งเดิมนั้นรองรับเธรดมัลติเธรดและแบ็คกราวน์หรือการดำเนินการแบบขนานหรือไม่? เราจะทำสิ่งนั้นได้อย่างไร
ฉันได้อ่านเอกสารอย่างเป็นทางการของ react-native และแหล่งสื่อและบล็อกอื่น ๆ แล้วฉันรู้ว่ามีUI ThreadและJavaScript Threadใน react-native Javascript thread เป็นเธรดที่ลอจิกจะรันโค้ดจาวาสคริปต์จะทำการเรียก API การสัมผัสของเหตุการณ์จะถูกประมวลผลและอื่น ๆ อีกมากมาย และ UI Thread จะอัพเดต UI หากเธรด JavaScript กำลังทำงานในกระบวนการและหากเราดำเนินการกับปุ่มหรือเหตุการณ์การสัมผัสอื่น ๆ อีกครั้งจะต้องใช้เวลาในการตอบสนองหลังจากดำเนินการหนึ่งกระบวนการเพียงอัปเดต UI จนกว่าจะรู้สึกว่ามันล้าหลังหรือติดอยู่ที่ใดที่หนึ่ง ตัวอย่างเช่น มีตัวนำทางแท็บด้านล่างซึ่งมีสี่แท็บมี listview ในแท็บแรกและมุมมองแผนที่ซึ่งแสดงเส้นทางระหว่างหลายจุดในแท็บที่สอง ฉันได้ทำการกระทำของปุ่ม (คลิกเช่นเดียวกับปุ่มในมุมมองรายการ) ในแท็บแรกและไปที่แท็บที่สองในทันทีมันรู้สึกล่าช้าเล็กน้อยในการอัปเดต UI หรือใช้เวลาสักครู่ (1-3 วินาที) เพื่อนำทางจากครั้งแรก ไปที่แท็บที่สอง ในแท็บที่สองแผนที่ใช้เวลา (5-10 วินาที) เพื่อดึงเส้นทางระหว่างหลายจุดเมื่อกระบวนการนี้ดำเนินต่อไปหากฉันนำทางไปยังแท็บอื่น ๆ การนำทางระหว่างแท็บนั้นไม่ราบรื่นและ UI ล่าช้ามีจำนวนมาก เราจะทำให้แอปที่ตอบสนองต่อพื้นเมืองตอบสนองได้เร็วขึ้นต่อการกระทำที่สัมผัสได้และลดความล่าช้าของ UI …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.