mbpourya 1 ارسال شده در ۲۸ خرداد ۱۳۹۴ گزارش اشتراک گذاری ارسال شده در ۲۸ خرداد ۱۳۹۴ سلام بنده یه navigation drawer درست کردم که کدهای فایل جاوا و لایه اصلی و لایه استرینگهامو واستون میزارم این پایین اگه امکان راهنماییم کنید که برای هر آیتم چطوری میتونم یه شنونده کلیک مثل دکمه براشون تعریف کنم؟ در واقع این منو رو ساختم که یه سری دکمه های روی لایه اصلی رو دیگه نزارم و بجاش اونهارو توی منو ایجاد کنم(مثل نمایش دادن علاقه ها و رفتن به صفحه جستجو و...) البته این کدها به صورت امتحانی در یه پروژه جدید هست. امیدوارم بد توضیح نداده باشم MainActivity.java [shcode=java] import android.support.v4.app.ActionBarDrawerToggle; import android.support.v4.widget.DrawerLayout; import android.support.v7.app.ActionBarActivity; import android.content.Context; import android.os.Bundle; import android.view.Gravity; import android.view.View; import android.view.View.OnClickListener; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.ArrayAdapter; import android.widget.ListView; import android.widget.Toast; public class MainActivity extends ActionBarActivity { private String[] mPlanetTitles; private DrawerLayout mDrawerLayout; private ListView mDrawerList; private ActionBarDrawerToggle mDrawerToggle; String dokme_txt= "test"; private Context context; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //Codhaye Marboot be ActionBar View actionBarView = getLayoutInflater().inflate(R.layout.actionbar_view , null); getSupportActionBar().setNavigationMode(android.support.v7.app.ActionBar.DISPLAY_SHOW_CUSTOM); getSupportActionBar().setDisplayOptions(android.support.v7.app.ActionBar.DISPLAY_SHOW_CUSTOM); getSupportActionBar().setCustomView(actionBarView) ; findViewById(R.id.actionbar_icon).setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { //code marboot be dokmeye baz shodane menu mDrawerLayout.openDrawer(Gravity.RIGHT); } }); //sliding menu mPlanetTitles = getResources().getStringArray(R.array.dokmeha); mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout); mDrawerList = (ListView) findViewById(R.id.left_drawer); // Set the adapter for the list view mDrawerList.setAdapter(new ArrayAdapter(this,android.R.layout.simple_list_item_1, mPlanetTitles)); // Set the list's click listener mDrawerList.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> arg0, View arg1, int post, long arg3) { String dokme_txt = getResources().getStringArray(R.array.dokmeha); Toast.makeText(getBaseContext(),"برروی "+dokme_txt+" کلیک شد", Toast.LENGTH_SHORT).show(); } }); } } [/shcode] activity_main.xml [shcode=xml] android:id="@+id/drawer_layout" android:layout_width="match_parent" android:layout_height="match_parent" > android:id="@+id/content_frame" android:layout_width="match_parent" android:layout_height="match_parent" /> android:id="@+id/left_drawer" android:layout_alignParentRight="true" android:layout_width="240dp" android:layout_height="match_parent" android:layout_gravity="right" android:choiceMode="singleChoice" android:divider="@android:color/transparent" android:dividerHeight="0dp" android:background="#ffffff"/> [/shcode] strings.xml [shcode=xml]<?xml version="1.0" encoding="utf-8"?> are Hello world! Settings صفحه اصلی تنظیمات درباره ما خروج [/shcode] نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر
Razieh Shahraki 49 ارسال شده در ۲۸ خرداد ۱۳۹۴ گزارش اشتراک گذاری ارسال شده در ۲۸ خرداد ۱۳۹۴ سلام دوست عزیز کدها خوانایی نداره یه سری کد اضافه داخلشه.قبل از گذاشتن کد توی نوت پد بذارین بعد توی تگ های مخصوص قرار بدین. الان اون توست که داره به شما میگه کدوم ایتم کلیک شده مربوط به همین منو هست؟ اگه اره شما میتونین یا همین متغیر dokme_txt بررسی کنین اگه متغیر مثلا مساوی درباره ما بود بره به اکتیویتی درباره ما و .... نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر
mbpourya 1 ارسال شده در ۲۸ خرداد ۱۳۹۴ مالک گزارش اشتراک گذاری ارسال شده در ۲۸ خرداد ۱۳۹۴ سلام دوست عزیز کدها خوانایی نداره یه سری کد اضافه داخلشه.قبل از گذاشتن کد توی نوت پد بذارین بعد توی تگ های مخصوص قرار بدین. الان اون توست که داره به شما میگه کدوم ایتم کلیک شده مربوط به همین منو هست؟ اگه اره شما میتونین یا همین متغیر dokme_txt بررسی کنین اگه متغیر مثلا مساوی درباره ما بود بره به اکتیویتی درباره ما و .... عذر میخوام استاد عزیز دقیقا داخل تگ قرارش دادم نمیدونم چرا اینکدهای اضافه اومده! من کد قسمت توست رو از یه سایت کپی کردم و به خاطر داشتن واژه فارسی توی کد باعث شده نتونم تشخیص بدم باید چیکار کنم! اگه ممکنه شما یک قطعه کد که بتونه برای هر آیتم یه شنونده کلیک ایجاد کنه(به طور مثال بره به یه لایه دیگه) رو به من بدید ممنون میشم چون این چیزی که من ازین کد فهمیدم برای همه ی آیتمها یک خاصیت رو تعریف کرده، نه هر آیتم به صورت جداگانه... [shcode=java] package com.example.are; import android.support.v4.app.ActionBarDrawerToggle; import android.support.v4.widget.DrawerLayout; import android.support.v7.app.ActionBarActivity; import android.content.Context; import android.os.Bundle; import android.view.Gravity; import android.view.View; import android.view.View.OnClickListener; import android.widget.AdapterView; import android.widget.AdapterView.OnItemClickListener; import android.widget.ArrayAdapter; import android.widget.ListView; import android.widget.Toast; public class MainActivity extends ActionBarActivity { private String[] mPlanetTitles; private DrawerLayout mDrawerLayout; private ListView mDrawerList; private ActionBarDrawerToggle mDrawerToggle; String dokme_txt= "test"; private Context context; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //Codhaye Marboot be ActionBar View actionBarView = getLayoutInflater().inflate(R.layout.actionbar_view , null); getSupportActionBar().setNavigationMode(android.support.v7.app.ActionBar.DISPLAY_SHOW_CUSTOM); getSupportActionBar().setDisplayOptions(android.support.v7.app.ActionBar.DISPLAY_SHOW_CUSTOM); getSupportActionBar().setCustomView(actionBarView) ; findViewById(R.id.actionbar_icon).setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { //code marboot be dokmeye baz shodane menu mDrawerLayout.openDrawer(Gravity.RIGHT); } }); //sliding menu mPlanetTitles = getResources().getStringArray(R.array.dokmeha); mDrawerLayout = (DrawerLayout) findViewById(R.id.drawer_layout); mDrawerList = (ListView) findViewById(R.id.left_drawer); // Set the adapter for the list view mDrawerList.setAdapter(new ArrayAdapter(this,android.R.layout.simple_list_item_1, mPlanetTitles)); // Set the list's click listener mDrawerList.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> arg0, View arg1, int post, long arg3) { String dokme_txt = getResources().getStringArray(R.array.dokmeha); Toast.makeText(getBaseContext(),"برروی "+dokme_txt+" کلیک شد", Toast.LENGTH_SHORT).show(); } }); } } [/shcode] نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر
mbpourya 1 ارسال شده در ۲۹ خرداد ۱۳۹۴ مالک گزارش اشتراک گذاری ارسال شده در ۲۹ خرداد ۱۳۹۴ دوستان جوابی برای سوال بالا اگه دارید منت رو سر بنده بزارید و راهنماییی کنید ممنون نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر
Razieh Shahraki 49 ارسال شده در ۲۹ خرداد ۱۳۹۴ گزارش اشتراک گذاری ارسال شده در ۲۹ خرداد ۱۳۹۴ سلام دوست عزیز شما می تونین بجای همین خط [shcode=java]Toast.makeText(getBaseContext(),"برروی "+dokme_txt+" کلیک شد", Toast.LENGTH_SHORT).show();[/shcode] اینجوری بنویسین [shcode=java]if(dokme_txt.equals("درباره ما")==true){ finish(); startActivity(new Intent(main.this,about.class)); }[/shcode] نقل قول لینک ارسال به اشتراک گذاری در سایت های دیگر
پست های پیشنهاد شده
به گفتگو بپیوندید
هم اکنون می توانید مطلب خود را ارسال نمایید و بعداً ثبت نام کنید. اگر حساب کاربری دارید، برای ارسال با حساب کاربری خود اکنون وارد شوید .