من کد شما رو تست کردم وقتی اکتیویتی باز میشه کیبورد فعال نیست و وقتی روی edittext کلیک می کنم کیبورد فعال میشه.
بروز خطا
[message]
اشتراک در سوال
رای ها
[dataList]
پرسش و پاسخ
غیر فعال کردن فوکوس از روی edit text چه طور انجام میشود؟
مدیریت گفتگو
آخرین تغییر: 10 سال پیش
با سلام
من یک edit text توی برنامه ام دارم برای جستجو وقتی نرم افزار اجرا میشه فوکوس رویedit box هست و باعث میشه کیبورد فعال بشه
برای حل این مشکلات چکار باید کرد؟
می دونم عین همین سوال تو انجمن با جوابش تو این لینک وجود داره اما من چون کاربر معمولیم به جواب دسترسی ندارم ممنون میشم کمکم کنید
با سپاس
پاسخها 5
حجمش یکم زیاده
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:background="#ffffff"
android:orientation="vertical" >
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center"
android:orientation="vertical" android:background="#000000">
<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:text="@string/title"
android:textColor="#ffffff"
android:textSize="13dip"
/>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:gravity="center" >
<TextView
android:id="@+id/TextView04"
android:layout_width="20dip"
android:layout_height="wrap_content" />
<Button
android:id="@+id/btnExit"
style="?android:attr/buttonStyleSmall"
android:layout_width="48dip"
android:layout_height="48dip"
android:background="@drawable/exit" />
<TextView
android:id="@+id/TextView01"
android:layout_width="20dip"
android:layout_height="wrap_content" />
<Button
android:id="@+id/btnAdd"
style="?android:attr/buttonStyleSmall"
android:layout_width="48dip"
android:layout_height="48dip"
android:background="@drawable/add" />
<TextView
android:id="@+id/TextView02"
android:layout_width="20dip"
android:layout_height="wrap_content" />
<Button
android:id="@+id/btnSetting"
style="?android:attr/buttonStyleSmall"
android:layout_width="48dip"
android:layout_height="48dip"
android:background="@drawable/setting" />
<TextView
android:id="@+id/TextView03"
android:layout_width="20dip"
android:layout_height="wrap_content" />
<Button
android:id="@+id/btnHome"
style="?android:attr/buttonStyleSmall"
android:layout_width="48dip"
android:layout_height="48dip"
android:background="@drawable/home" />
<TextView
android:id="@+id/textView2"
android:layout_width="20dip"
android:layout_height="wrap_content"/>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<ImageView
android:id="@+id/imageView1"
android:layout_width="30dip"
android:layout_height="30dip"
android:src="@drawable/find" />
<EditText
android:id="@+id/txtSearch"
android:layout_width="wrap_content"
android:layout_height="30dip"
android:layout_weight="1"
android:ems="10" android:focusable="false" android:focusableInTouchMode="true">
<requestFocus />
</EditText>
</LinearLayout>
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:orientation="vertical" >
<ListView
android:id="@+id/listContent"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:layout_weight="0.06"
android:background="#000000"
android:divider="@null" >
</ListView>
</LinearLayout>
</LinearLayout>
</LinearLayout>
نظرات
به این شکل بنویسید قسمت search رو :
<LinearLayout
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:descendantFocusability="beforeDescendants"
android:focusableInTouchMode="true" >
<ImageView
android:id="@+id/imageView1"
android:layout_width="30dip"
android:layout_height="30dip"
android:src="@drawable/find" />
<EditText
android:id="@+id/txtSearch"
android:layout_width="wrap_content"
android:layout_height="30dip"
android:layout_weight="1"
android:ems="10"/>
</LinearLayout>
نظرات
خیلی ممنونم که وقت گذاشتید دوست عزیز
الان فوکوس غیر فعال شده اما وقتی ام روش تاچ میشه بازم غیر فعاله!
با وجود این قطعه کد یه مقدار عجیبه البته که چرا بعد از تاچ فوکوس نمیشه
android:focusableInTouchMode="true"
نظرات
واقعا؟! پس واسه خودم چرا اینجوری جواب میده!
قبل از تعریف کلیک برای ادیت تکس این خط کد رو به برنامه اضافه کنید
this.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN);
نظرات
این کد رو داخل لایه مورد نظر قرار بدید
android:descendantFocusability="beforeDescendants" android:focusableInTouchMode="true"
نظرات
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .
ویرایش
پیام
نظرات