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

คำถามเกี่ยวกับการสร้างหรือจัดการกิจกรรมใน Android ในแอปพลิเคชัน Android กิจกรรมคือส่วนประกอบที่ให้ส่วนต่อประสานกับผู้ใช้ที่อนุญาตให้ผู้ใช้ทำบางสิ่งบางอย่าง ตัวอย่างง่ายๆคือ: หมุนโทรศัพท์ถ่ายภาพส่งอีเมลหรือดูแผนที่

13
Android - startActivityForResult จะเรียกใช้งาน ActivityResult ทันที
ฉันกำลังเปิดตัวกิจกรรมจากกิจกรรมหลักในแอปของฉันโดยใช้การโทรstartActivityForResult(intent, ACTIVITY_TYPE)และพวกเขาทั้งหมดทำงานได้ แต่หนึ่ง กิจกรรมนี้เรียกว่าเปิดตัวกิจกรรมตามที่ต้องการ แต่ในบันทึกฉันเห็นว่าonActivityResult()มันถูกทริกเกอร์ทันที กิจกรรมการแสดง แต่ถูกส่งกลับทันที RESULT_CANCELEDonActivityResult() จากนั้นฉันโต้ตอบกับกิจกรรมกดปุ่มที่โทรfinish()และonActivityResult()ไม่ได้เรียกในเวลานี้ (เพราะเห็นได้ชัดว่ามีการส่งคืนผลลัพธ์แล้ว) มันสมเหตุสมผลกับทุกคนไหม? มีใครเคยเห็นพฤติกรรมนี้มาก่อนหรือไม่

18
วิธีปิดกิจกรรมและกลับไปที่กิจกรรมก่อนหน้าใน android
ฉันมีกิจกรรมหลักที่เมื่อฉันคลิกที่ปุ่มเริ่มกิจกรรมใหม่ฉันใช้รหัสต่อไปนี้เพื่อทำ: Intent intent = new Intent(this, SettingsActivity.class); startActivity(intent); รหัสข้างต้นถูกเรียกใช้จากกิจกรรมหลัก ตอนนี้ในกิจกรรมใหม่ของฉันซึ่งถูกเรียกโดยกิจกรรมหลักฉันมีปุ่มย้อนกลับ เมื่อฉันคลิกที่ปุ่มย้อนกลับนี้ฉันต้องการให้กิจกรรมใหม่ของฉันปิดและต้องกลับไปที่กิจกรรมหลักดั้งเดิม ฉันลองโทรsuper.finish()แล้วfinish() (จากกิจกรรมใหม่) แต่นี่ก็ปิดแอปพลิเคชันทั้งหมดของฉัน (รวมถึงกิจกรรมหลักของฉัน) ฉันจะปิดกิจกรรมที่กำลังโฟกัสอยู่และกลับไปยังกิจกรรมหลักได้อย่างไร แก้ไข ข้อเท็จจริงที่ว่าปุ่มย้อนกลับของโทรศัพท์ของฉันปิดทั้งแอปทำให้ฉันคิดว่าฉันเริ่มต้นกิจกรรมที่สองไม่ถูกต้องหรือไม่ ตกลงฉันได้รับการมอง ฉันสร้างกิจกรรมการตั้งค่าที่ใช้รหัสรายการเดียวกันและรหัสเดียวกันเพื่อเริ่มกิจกรรม สำหรับกิจกรรมการตั้งค่าเมื่อฉันกดปุ่มย้อนกลับมันจะกลับสู่กิจกรรมหลัก ด้วยกิจกรรมดังกล่าวข้างต้นในคำถามหลักเพียงแค่ออกจากแอปทั้งหมดของฉัน ดังนั้นปัญหาดูเหมือนจะไม่ได้อยู่กับรหัสที่จะเสร็จสิ้นกิจกรรม แต่กิจกรรมเอง

24
แป้นพิมพ์อ่อนเปิดและปิดผู้ฟังในกิจกรรมใน Android
ฉันมีActivityที่ที่มี 5 EditTextวินาที เมื่อผู้ใช้คลิกที่ปุ่มแรกEditTextแป้นพิมพ์แบบอ่อนจะเปิดขึ้นเพื่อป้อนค่าบางอย่างในนั้น ฉันต้องการตั้งค่าViewการมองเห็นของผู้อื่นเป็นGoneเมื่อแป้นพิมพ์อ่อนเปิดขึ้นและเมื่อผู้ใช้คลิกที่EditTextแป้นแรกและเมื่อแป้นพิมพ์อ่อนปิดลงจากเดิมEditTextเมื่อกดปุ่มย้อนกลับ จากนั้นฉันต้องการตั้งค่าViewการเปิดเผยของคนอื่นให้มองเห็นได้ มีผู้ฟังหรือโทรกลับหรือแฮ็คเมื่อคีย์บอร์ดนุ่มเปิดขึ้นจากการคลิกครั้งแรกEditTextใน Android หรือไม่?

9
ดูกองกิจกรรมของงาน
ฉันเพิ่งเริ่มพัฒนาแอปพลิเคชัน Android ง่ายๆในขณะที่ฉันยังเรียนรู้แพลตฟอร์ม ฉันใช้ Eclipse IDE กับปลั๊กอิน ADT 0.9.6 ฉันต้องการทราบว่าสามารถดูActivityสแต็กที่เกี่ยวข้องกับงานได้หรือไม่? มีวิธีใดบ้างผ่านเครื่องมือ DDMS หรือผ่านเทคนิคอื่น ๆ ? โดยพื้นฐานแล้วสิ่งที่ฉันต้องการคือสามารถดูกิจกรรมสแต็กของงานเพื่อให้แน่ใจว่าแอปพลิเคชันทำงานตามที่คาดไว้ ฉันรู้ว่าเป็นไปได้ที่จะควบคุมพฤติกรรมของงานในระดับหนึ่งโดยใช้แฟล็กในIntentออบเจ็กต์และผ่านคุณสมบัติบางอย่างของ<activity>องค์ประกอบ อย่างไรก็ตามมันจะเป็นการดีที่จะมีเครื่องมือประเภทหนึ่งโดยเฉพาะในโหมดดีบั๊กหรือมากกว่านั้นซึ่งจะช่วยให้นักพัฒนาสามารถมองเห็นActivityสแต็กได้ทันที

8
จะส่งตัวแปรจาก Activity ไปยัง Fragment และส่งกลับได้อย่างไร?
ฉันกำลังสร้างแอพ Android และฉันต้องการส่งต่อวันที่ระหว่างกิจกรรมและส่วนย่อย กิจกรรมของฉันมีปุ่มซึ่งเปิดแฟรกเมนต์: DatePickerFragment ในกิจกรรมของฉันฉันแสดงวันที่ซึ่งฉันต้องการแก้ไขด้วยส่วน ดังนั้นฉันต้องการส่งวันที่ไปยัง datepicker และส่งกลับไปที่กิจกรรม ฉันได้ลองวิธีแก้ปัญหามากมาย แต่ไม่มีวิธีใดได้ผล วิธีง่ายๆจะส่งผ่านข้อโต้แย้ง แต่ไม่สามารถทำได้ด้วยเศษ

13
onSaveInstanceState () และ onRestoreInstanceState ()
ฉันพยายามที่จะบันทึกและเรียกคืนสถานะของนั้นActivityโดยใช้วิธีการและonSaveInstanceState()onRestoreInstanceState() ปัญหาคือมันไม่เคยเข้าonRestoreInstanceState()วิธี มีใครอธิบายให้ฉันฟังได้ไหมว่าเพราะอะไร

8
ต้องเรียก requestFeature () ก่อนที่จะเพิ่มเนื้อหา
ฉันกำลังพยายามติดตั้งแถบหัวเรื่องที่กำหนดเอง: นี่คือคลาส Helper ของฉัน: import android.app.Activity; import android.view.Window; public class UIHelper { public static void setupTitleBar(Activity c) { final boolean customTitleSupported = c.requestWindowFeature(Window.FEATURE_CUSTOM_TITLE); c.setContentView(R.layout.main); if (customTitleSupported) { c.getWindow().setFeatureInt(Window.FEATURE_CUSTOM_TITLE, R.layout.titlebar); } } } นี่คือที่ที่ฉันเรียกว่าใน onCreate (): @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setupUI(); } private void setupUI(){ setContentView(R.layout.main); UIHelper.setupTitleBar(this); } …

11
Android: ล้างกองกิจกรรม
ฉันมีกิจกรรมหลายอย่างในใบสมัคร และการไหลมีความซับซ้อนมาก เมื่อฉันคลิกแอปพลิเคชัน Logout จะไปที่หน้าจอเข้าสู่ระบบและจากนั้นผู้ใช้สามารถออกโดยปุ่มยกเลิก (โทรsystem.exit(0)) เมื่อฉันออกหรือปุ่มย้อนกลับระบบจะเรียกกิจกรรมจากสแต็ก :( ฉันจะล้างกิจกรรมทั้งหมดในสแต็กได้อย่างไรเมื่อฉันไปถึงหน้าจอเข้าสู่ระบบการโทรfinish()ไม่สามารถใช้งานได้จริงเนื่องจากมีกิจกรรมมากมายและไม่ควรปิดกิจกรรมบางอย่างเมื่อ มีการใช้งานเช่นกิจกรรมเรียกใช้กล้องเนทีฟ validateuser logoutuser = new validateuser(); logoutuser.logOut(); Intent loginscreen = new Intent(homepage.this, Login2.class); (homepage.this).finish(); loginscreen.setFlags( Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NO_HISTORY); startActivity(loginscreen);

8
เจตนา - ถ้ากิจกรรมกำลังดำเนินอยู่ให้นำมาไว้ข้างหน้ามิฉะนั้นจะเริ่มกิจกรรมใหม่ (จากการแจ้งเตือน)
แอพของฉันมีการแจ้งเตือนซึ่งชัดเจนว่าไม่มีการตั้งค่าสถานะใด ๆ เริ่มต้นกิจกรรมใหม่ทุกครั้งดังนั้นฉันจึงได้รับกิจกรรมเดียวกันหลายรายการที่ทำงานอยู่ด้านบนซึ่งกันและกันซึ่งผิดปกติ สิ่งที่ฉันต้องการให้ทำคือการนำกิจกรรมที่ระบุในการแจ้งเตือนที่ค้างอยู่ไปข้างหน้าถ้ามันกำลังทำงานอยู่หรือไม่ก็เริ่มทำ จนถึงตอนนี้เจตนา / ความตั้งใจที่รอดำเนินการสำหรับการแจ้งเตือนที่ฉันมีอยู่ private static PendingIntent prepareIntent(Context context) { Intent intent = new Intent(context, MainActivity.class); intent.setFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT); return PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT); } และแปลกบางครั้งมันใช้งานได้บางครั้งมันไม่ ... ฉันรู้สึกว่าฉันได้ลองทุกชุดผสมกันแล้ว

2
Android: วิธีทำให้กิจกรรมส่งคืนผลลัพธ์ไปยังกิจกรรมที่เรียกมันว่า?
ฉันมีLocationกิจกรรมที่สามารถเรียกจากกิจกรรมเป็นจำนวนมากเช่นและSign up OrderในLocationกิจกรรมผู้ใช้ป้อนตำแหน่งของตนดังนั้นกิจกรรมLocationจะส่งคืนตำแหน่งใหม่นี้ให้กับกิจกรรมนั้นซึ่งเรียกว่า ดังนั้นเมื่อSign upกิจกรรมเรียกLocationกิจกรรมนั้นจะต้องคืนข้อมูลให้กับSign upกิจกรรม เวลาอื่นOrderกิจกรรมจะทำในสิ่งเดียวกัน บันทึก ฉันรู้ว่าคุณจะบอกฉันว่าฉันควรโพสต์รหัส แต่ฉันไม่ได้ขอให้คุณให้รหัสฉัน ฉันแค่อยากได้เคล็ดลับลิงค์หรือกระทู้ดีๆ

9
วิธีกำหนด dimens.xml สำหรับทุกขนาดหน้าจอที่แตกต่างกันใน Android
เมื่อรองรับขนาดหน้าจอที่แตกต่างกัน (ความหนาแน่น) ในAndroidมักให้ความสำคัญกับการสร้างเค้าโครงที่แตกต่างกันสำหรับทุกหน้าจอที่เป็นไปได้ IE ldpi mdpi hdpi XHDPI xxhdpi xxxhdpi ผมออกแบบรูปแบบสำหรับXHDPIหน้าจอเป็นข้อมูลอ้างอิงและกำหนดมันมิติในdimens.xml ตอนนี้ฉันต้องการให้การสนับสนุนกับทุกขนาดหน้าจอที่เป็นไปได้ ฉันจะทำเช่นนั้นได้อย่างไร? เท่าที่ฉันรู้ฉันสามารถใช้เครื่องมือนี้เพื่อหาdimens.xmlที่เหมาะสมสำหรับขนาดหน้าจออื่น ๆ และเพิ่มลงในโปรเจ็กต์ของฉัน นี่เป็นวิธีที่ถูกต้องในสถานการณ์ของฉันหรือไม่? คำถามอื่นฉันต้องสร้างdimens.xmlสำหรับขนาดหน้าจอด้านบนเท่านั้นหรือไม่ ถ้าใช่แล้วคือw820dpอะไร? ขอบคุณสำหรับความช่วยเหลือของคุณ. ฉันต้องการรองรับโทรศัพท์เท่านั้น (ไม่ใช่แท็บเล็ตหรืออุปกรณ์อื่น ๆ )


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

18
ฉันจะรับความสูงและความกว้างของ Android Navigation Bar โดยทางโปรแกรมได้อย่างไร
แถบนำทางสีดำที่ด้านล่างของหน้าจอไม่สามารถถอดออกได้อย่างง่ายดายใน Android เป็นส่วนหนึ่งของ Android ตั้งแต่ 3.0 แทนปุ่มฮาร์ดแวร์ นี่คือภาพ: ฉันจะรับขนาดของความกว้างและความสูงขององค์ประกอบ UI นี้เป็นพิกเซลได้อย่างไร

5
runOnUiThread ในแฟรกเมนต์
ฉันกำลังพยายามแปลงกิจกรรมเป็นส่วนย่อย runOnUiThreadเครื่องหมายข้อผิดพลาดใน ในอดีต: GoogleActivityV2 ขยายจากกิจกรรม runOnUiThread ในคลาส ExecuteTask คลาส ExecuteTask ซ้อนอยู่บนกิจกรรม (รันตกลง) ตอนนี้: GoogleActivityV2 ขยายจาก Fragment runOnUiThread ในคลาส ExecuteTask คลาส ExecuteTask ซ้อนอยู่บนกิจกรรม (ข้อผิดพลาดใน runOnUiThread) นี่คือรหัสของฉัน public class GoogleActivityV2 extends SherlockMapFragment implements OnMapClickListener , OnMapLongClickListener , OnCameraChangeListener , TextWatcher { @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState){ View rootView …

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