سلام
من میخوام که با کلیک بر روی یک Button چند EditText که در اکتیو تعریف شده را به صورت ترتیبی اجرا کنه.مثلا برای اجرای کد های ussd به صورت ترتیبی
مثال: *140*11*1*4*3#
ممنون
اگه منظورتون درست فهمیده باشم..شما میخواید یک دکمه داشته باشید..چند تا editText...مثلا وقتی editText1 نمایش داده شده بعدش وقتی طرف مثلا عدد 3 زد و بعد کلیک کرد، editText2 نمایش پیدا کنه بعد کاربر مثلا عدد 4 نوشت داخلش و دکمه رو کلیک کرد بازم editText3 نمایش داده بشه تا انتها...............منظورتون این است؟
اگر منظورت همون گفته بالای من بود...میتونید از FrameLayout() استفاده کنید...
Framelayout باعث میشه هر چندتا داخلش button یا EditText یا هرچیز دیگه ای که بزارید ..روی هم سوار بشه . یعنی اگر 4 تا EditText داخل آن بزارید .فقط EditText اولی نمایش داده میشه و بقیه زیر آن پنهان میشن...
برای این کار میتونید از کد شبیه زیر استفاده کنید.
کد پیاچپی:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical" >
<Button
android:id="@+id/button1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="Button" />
<FrameLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content">
<EditText
android:id="@+id/editText1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:visibility="invisible"
android:ems="10"
android:inputType="number" />
<EditText
android:id="@+id/editText2"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:visibility="invisible"
android:ems="10"
android:inputType="number" />
<EditText
android:id="@+id/editText3"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:visibility="invisible"
android:ems="10"
android:inputType="number" />
<EditText
android:id="@+id/editText4"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:visibility="invisible"
android:ems="10"
android:inputType="number" />
</FrameLayout>
</LinearLayout>
به تگ زیر دقت کنید .که باعث میشه EditText از نظر کاربر پنهان بشه.
کد پیاچپی:
android:visibility="invisible"
بعد ش کافیه داخل فایل جاوا تون .داخل متد OnClickLisinear() یک شمارنده مثل i تعریف کنید..مثلا اگر یکبار دکمه کلیک شد،i=1 شود.اگر دوبار کلیک کرد i=2 و.....
بعد کافیه یک Swith Case روی شمارنده i بندازید..به طوری که اگر 1 بود editText1 نمایان شود اگر 2 بود editText2 نمایان الی اخر..
برای ظاهر شدن EditText کافیه از دستور زیر استفاده کنید.
کد پیاچپی:
editText1.setVisibility(View.VISIBLE);
فقط به یاد داشته باشید اگر EditText2 نمایان میشود باید EditText1 ازظاهر پنهان شود....
میتونید برای پنهان شدن از دستور زیر استفاده کنید.
کد پیاچپی:
editText1.setVisibility(View.INVISIBLE);
سلام.
نه منظورم این نبود.
من در یک سوال خواسته بودم که (
http://www.kelidestan.com/forum/showthread.php?tid=5294 ).ادمین جواب دادن و یک راه توصیه کردن که برای یک Edit Text به همراه یک Button بود برای اجرای کدهای ussd. من میخوام که چند تا edit text در اکتیو داشته باشم و مثلا در یکی شماره مبایل در یکی شماره ای عابر بانک و در یکی نوع شارژ به صورت عددی مشخص شود.حالا در جاوا چطور باید کار کنم.
ممنون
ساختار بالایی که من بالا مطرح کردم دقیقا همینه..که یک دکمه هست و چندتا EditText که اولی میتونه شماره بانک ملی باشه..دومی شماره تلفن و سومی شارژ و ....
و میتونید داخل جاوا تک تک اطلاعات رو از Edittext بگیرید با دستور زیر دیگه..
کد پیاچپی:
EditText editText1=(EditText)findviewById(R.id.editText1);
editText1.getText();