View Full Version : طراحی برنامه ی قابلیت جستجو
raha_jon
جمعه 01 فروردین 1393, 17:17 عصر
با عرض سلام و ادب و ضمن خسته نباشید خدمت تمامی دوستان و تبریک عید نوروز
ببخشید من می خوام برنامه ای طراحی کنم که تشکیل شده از چند اکتیویتی باشه و در هر اکتیویتی چند Button وجود داشته باشه و هر اکتیویتی در سربرگش کادر جستجو وجود داشته باشه و با اون کادر بتوان فقط باتون ها را جستجو کرد مثلا اگر باتونی باشه"سلام"با نوشتن "سلام"در کادر جستجو اون باتون را نمایش بده.و لازم نیست که محتویات کل را سرچ کنه.
و باید از عنصری استفاده کنم(باتون یا هر چیز دیگه) که بتونه این کد را اجرا کنه.
Button btnT = (Button) findViewById(R.id.test);
btnTA.setTypeface(face);
String a2 = (String) btnT.getText().toString();
btnT.setText(PersianReshape.reshape(a2));
btnT.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent next = new Intent(M.this, T.class);
next.putExtra("btn", 29 );
startActivity(next);
}
});
باید از چه چیزی استفاده کنم ؟؟؟؟؟؟؟
و نمی خوام از بانک اطلاعاتی استفاده کنم با کد بالا میخوام html لود کنم.
mfaridi
جمعه 01 فروردین 1393, 20:15 عصر
گنگ نوضیح دادی
mfaridi
جمعه 01 فروردین 1393, 20:17 عصر
ولی اگه بخوای توی همه اکتیویتی سربرگ سرچ داشته باشی به نطر من فرگمنت بهتر از اکتیویتی هست توی سایت کمالان هم در موردش توضیح داده
mfaridi
جمعه 01 فروردین 1393, 20:19 عصر
چرا از لیست استفاه نمیکنی؟گزینه بهتر هست شخصی سازی هم کامل میشه
raha_jon
جمعه 01 فروردین 1393, 20:49 عصر
یعنی با لیست می تونم کامل کد بالا را اجرا کنم؟
mfaridi
جمعه 01 فروردین 1393, 21:02 عصر
اره با لیست میتونی چیزی که میخوای رو پیدا کنی
البته من دقیق متوجه منظورتون نشدم
raha_jon
جمعه 01 فروردین 1393, 21:36 عصر
ممنون
ببینید من اگه بخوام با تعداد زیادی از Button در هر اکتیویتی کار کنم تعداد Button ها خیلی بالا میره و کاربر نمی تونه ساده آن چیزی که دنبالشه را پیدا کنه به همین دلیل می خوام در بالای هر اکتیویتی یک سرچ وجود داشته باشه و کار بر بتونه با سرچ خیلی راحت هدفشو پیدا کنه.و با کلیک روی آن کدی که بالا نوشته ام را اجرا کنه و در ضمن می خوام با کد بالا فایل html لود کنم.
فکر کنم کمی واضح شد اره؟
mfaridi
شنبه 02 فروردین 1393, 14:10 عصر
این کد اکتیویتی
setContentView(R.layout.activity_main);
final ListView listView=(ListView)findViewById(R.id.list);
final ArrayList<String> arrayList=new ArrayList<String>();
Button btnsearch=(Button)findViewById(R.id.button1);
final EditText text=(EditText)findViewById(R.id.editText1);
final String[] value=new String[]
{
"mahmo02","faridi","1","2","3","4","5","6","7"
};
for(int i=0;i<=value.length-1;i++){
Log.e("1",value[i]);
arrayList.add(value[i]);
}
final ArrayAdapter<String> adapter=new ArrayAdapter<String>(getBaseContext(), android.R.layout.simple_list_item_1, arrayList);
listView.setAdapter(adapter);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3)
{
Toast.makeText(getApplicationContext(), arrayList.get(arg2), 0).show();
};
});
btnsearch.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
arrayList.clear();
adapter.notifyDataSetChanged();
for(int i=0;i<=value.length-1;i++){
Boolean found;
found=value[i].contains(text.getText().toString());
if(found==true){
Log.e("e", value[i]);
arrayList.add(value[i]);
}
}
}
});
اینم لایوت
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >
<EditText
android:id="@+id/editText1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_toLeftOf="@+id/button1"
android:ems="10" />
<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentRight="true"
android:layout_alignParentTop="true"
android:layout_marginRight="14dp"
android:text="Button" />
<ListView
android:id="@+id/list"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/editText1"
android:layout_below="@+id/button1" >
</ListView>
</RelativeLayout>
raha_jon
یک شنبه 03 فروردین 1393, 09:56 صبح
سلام خیلی ممنون
اره دقیقا منظورم این بود حالا می خوام با کلیک کردن روی دکمه ی faridi یک کد را اجرا کنم مثلا کد بالا که نوشته ام اونو چطوری انجام بدم؟
ایا این روش که شما استفاده کردین می تونم این کد را اجرا کنم؟
btnT.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
Intent next = new Intent(M.this, T.class);
next.putExtra("btn", 29 );
startActivity(next);
}
});
با تشکر فراوان
mfaridi
یک شنبه 03 فروردین 1393, 12:59 عصر
اره میتونید این کار رو انجام بدید فقط کدهات رو بین public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3)
{
Toast.makeText(getApplicationContext(), arrayList.get(arg2), 0).show();
};
بنویس میتونی با if این کار رو کنی arrayList.get(arg2) رو تویif بزار و بگو اگه مساوی با 1 شد این اتفاق بیفته
raha_jon
سه شنبه 12 فروردین 1393, 13:36 عصر
اره میتونید این کار رو انجام بدید فقط کدهات رو بین public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3)
{
Toast.makeText(getApplicationContext(), arrayList.get(arg2), 0).show();
};
بنویس میتونی با if این کار رو کنی arrayList.get(arg2) رو تویif بزار و بگو اگه مساوی با 1 شد این اتفاق بیفته
سلام نتونستم اینو پیدا کنم هر کاری کردم نشد
ممنون کمک کنید ;
raha_jon
شنبه 16 فروردین 1393, 19:12 عصر
خواهشا یکی جواب بده خیلی لازم دارم
معذرت امید وارم با چشم اسپم نگاه نکنید.
raha_jon
چهارشنبه 20 فروردین 1393, 09:16 صبح
من با این روش از کد استفاده می کنم که هیچ عکس العملی نمی بینم
public void onItemClick(AdapterView<?> arg0, View arg1, int arg2, long arg3)
{
if (arg2 == 1){
setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
// TODO Auto-generated method stub
startActivity(new Intent(MainActivity.this, T.class));
}
});
}
Toast.makeText(getApplicationContext(), arrayList.get(arg2), 0).show();
};
});
mfaridi
پنج شنبه 15 خرداد 1393, 01:40 صبح
سلام من بهت گفتم که این شرط رو چک کن
if (arraylist.get(arg2).equals("1"))
vBulletin® v4.2.5, Copyright ©2000-1404, Jelsoft Enterprises Ltd.