本文介绍了当我单击抽屉关闭的任何地方时,导航抽屉中的Android的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
在导航抽屉中,当我按一个按钮或其他任何按钮时,抽屉会关闭.问题是什么?我在互联网上搜索,但没有发现与代码不同的地方.也许有一些错误,但我还没有发现.
in navigation drawer, when i push a button or anything else, drawer gets closed. What is the problem?I search on internet but I didn't find anything that is different than my codes. Maybe there are some mistakes but I have not found them.
代码:
index.xml
index.xml
<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/drawer_layout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:background="#bbb9b9b9">
<ListView
android:id="@+id/listViewDrawer"
android:layout_width="240dp"
android:layout_gravity="start"
android:layout_height="match_parent"
android:background="#fff"
android:padding="3dp"
android:choiceMode="singleChoice"
android:dividerHeight="1dp"
android:divider="@android:color/transparent">
</ListView>
<FrameLayout
android:id="@+id/content_frame"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="match_parent"
android:layout_height="match_parent"
android:weightSum="10">
<LinearLayout
android:orientation="horizontal"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center_horizontal"
android:weightSum="10">
<ImageButton
android:layout_width="0dp"
android:layout_height="fill_parent"
android:id="@+id/btnMalt"
android:layout_weight="1.5"
android:src="@drawable/mal" />
<EditText
android:layout_width="0dp"
android:layout_height="fill_parent"
android:id="@+id/legerin_ett"
android:layout_weight="5.5"
android:hint="@string/legerin_text" />
<ImageButton
android:layout_width="0dp"
android:layout_height="fill_parent"
android:id="@+id/btnLegerint"
android:layout_weight="1.5"
android:src="@drawable/legerin" />
<ImageButton
android:layout_width="0dp"
android:layout_height="fill_parent"
android:id="@+id/btnDerkevet"
android:layout_weight="1.5"
android:src="@drawable/derkeve" />
</LinearLayout>
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/sernavt"
android:gravity="center"
android:text="sepana tirşikê ji bo telefonên jîr"
android:textStyle="bold"
android:textColor="#ff000000"
android:textSize="20dp"
android:layout_marginTop="3dp"
android:layout_marginBottom="3dp" />
<ListView
android:layout_width="match_parent"
android:layout_height="0dp"
android:id="@+id/listViewt"
android:layout_gravity="center_horizontal"
android:layout_weight="9"
android:layout_marginBottom="5dp" />
<Button
android:layout_width="fill_parent"
android:layout_height="0dp"
android:text="@string/peyameke_binivise"
android:id="@+id/buttonPeyamBinivise"
android:layout_gravity="center_horizontal"
android:layout_weight="1" />
</LinearLayout >
</android.support.v4.widget.DrawerLayout>
main.java相关代码中的
in main.java related codes:
NuceMijarAdapter adapter1 = new NuceMijarAdapter(Index.this,R.layout.list_mijar_layout,arr);
lvDrawer.setAdapter(adapter1);
private class NuceMijarAdapter extends ArrayAdapter<String> {
private ArrayList<String> items;
public NuceMijarAdapter(Context context, int textViewResourceId, ArrayList<String> items) {
super(context, textViewResourceId, items);
this.items = items;
}
@TargetApi(Build.VERSION_CODES.HONEYCOMB)
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View v = convertView;
if (v == null) {
LayoutInflater vi = (LayoutInflater)getSystemService(Context.LAYOUT_INFLATER_SERVICE);
v = vi.inflate(R.layout.list_mijar_layout, null);
}
final String o = items.get(position);
if (o != null) {
String htmlText = o.replace("<a href=\"index.php?","<a href=\"http://www.tirsik.net/index.php?")
.replace("padding-left:8px","padding-left:1px")
.replace(" » ","");
final NuceMijarIro nuce = mijarIroAction(htmlText);
Button tvMijar = (Button) v.findViewById(R.id.tvMijar);
Button tvHejmar = (Button) v.findViewById(R.id.tvHejmar);
tvMijar.setText(nuce.mijar);
tvHejmar.setText(nuce.hejmar);
tvMijar.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Log.d("url: ", nuce.link);
if(nuce.link.contains("index.php?mijar")) {
urlIndex = nuce.link;
if(teketin) mijarRasthatiTeketi("bnr");
else mijarRasthati("bnr");
}
}
});
}
return v;
}
}
推荐答案
我曾经遇到过同样的问题.
I had the same problem once.
我有一个RecyclerView NavigationDrawer,只需将Navigation代码移到xml文件的底部,我的问题就解决了.
I had a RecyclerView NavigationDrawer and by just moving the Navigation code to the bottom of the xml file my problem got solved.
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:id="@+id/DrawerLayout"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:elevation="7dp">
<RelativeLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
//some code here for the body of your activity
</RelativeLayout>
<android.support.v7.widget.RecyclerView
android:id="@+id/RecyclerView"
android:layout_width="350dp"
android:layout_height="match_parent"
android:layout_gravity="right"
android:background="#ffffff"
android:scrollbars="vertical">
</android.support.v7.widget.RecyclerView>
希望它也对您有用...
hope it works for you too...
这篇关于当我单击抽屉关闭的任何地方时,导航抽屉中的Android的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!