Java 如何在MaterialDrawer上添加参数
我已设法显示多个帐户、名称和电子邮件。但我也希望在传递姓名和电子邮件时能够传递一个唯一的号码,这样当我单击帐户时,我就可以发送电子邮件、姓名和唯一的号码。当前,我只能在单击时吐司当前配置文件的名称和电子邮件 这是我的JsonJava 如何在MaterialDrawer上添加参数,java,android,Java,Android,我已设法显示多个帐户、名称和电子邮件。但我也希望在传递姓名和电子邮件时能够传递一个唯一的号码,这样当我单击帐户时,我就可以发送电子邮件、姓名和唯一的号码。当前,我只能在单击时吐司当前配置文件的名称和电子邮件 这是我的Json "sacco_info": [ { "name": "Alex Wanjala", "email": "wanjala@gmail.com" "corporate_no": "169500" } ] 这是我的密码 Toolbar toolbar =
"sacco_info": [
{
"name": "Alex Wanjala",
"email": "wanjala@gmail.com"
"corporate_no": "169500"
}
]
这是我的密码
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setSupportActionBar(toolbar);
// Create the AccountHeader
Api.getVolley(this, Api.GetCorporateNumber,"{\n" +
" \"authorization_credentials\": {\n" +
" \"api_key\": \""+Const.getInstance().getAuthorizationcredentials().getApi_key()+"\",\n" +
" \"token\": \""+Const.getInstance().getAuthorizationcredentials().getToken()+"\"\n" +
" },\n" +
" \"msisdn\": \""+Const.getInstance().getMember().getMSDN()+"\"\n" +
"}",new Api.VolleyCallback() {
@Override
public void onSuccess(String response) {
try {
JSONObject jsonObj = new JSONObject(response);
JSONArray jsonArray= jsonObj.getJSONArray("sacco_info");
for(int i=0;i<jsonArray.length();i++){
JSONObject jsonObject = jsonArray.getJSONObject(i);
profile = new ProfileDrawerItem().withName(jsonObject.getString("name"))
.withEmail(jsonObject.getString("email")).withIcon(getResources().getDrawable(R.drawable.profilepic));
headerResult.addProfiles(profile);
}
} catch (JSONException e) {
e.printStackTrace();
}
}
});
headerResult = new AccountHeaderBuilder()
.withActivity(DashboardMain.this)
.withHeaderBackground(R.drawable.materiale)
.withOnAccountHeaderListener(new AccountHeader.OnAccountHeaderListener() {
@Override
public boolean onProfileChanged(View view, IProfile profile, boolean currentProfile) {
Toast.makeText(getApplicationContext(), profile.getEmail().toString(),Toast.LENGTH_LONG).show();
Toast.makeText(getApplicationContext(), profile.getName().toString(),Toast.LENGTH_LONG).show();
//Toast the corporate_no here
return false;
}
})
.build();
result = new DrawerBuilder()
.withActivity(DashboardMain.this)
.withToolbar(toolbar)
.withAccountHeader(headerResult)
.addDrawerItems(
item1, item2,item3, item4, item5, item6,
new DividerDrawerItem(),
item7, item8,item9,item10,item11
)
.withOnDrawerItemClickListener(new Drawer.OnDrawerItemClickListener() {
@Override
public boolean onItemClick(View view, int position, IDrawerItem drawerItem) {
// do something with the clicked item :D
onNavigationItemSelected(position);
return false;
}
})
.build();
Toolbar-Toolbar=(Toolbar)findviewbyd(R.id.Toolbar);
设置支持操作栏(工具栏);
//创建AccountHeader
Api.getVolley(这个,Api.GetCorporateNumber,“{\n”+
“\“授权\u凭据\”:{\n”+
“\”api\U密钥\“:\”+Const.getInstance().getAuthorizationcredentials().getApi\U密钥()+“\”,\n”+
“\“令牌\:\”“+Const.getInstance().getAuthorizationcredentials().getToken()+”\“\n”+
},\n+
“\”msisdn\“:\”“+Const.getInstance().getMember().getMSDN()+“\”\n”+
“}”,新的Api.VolleyCallback(){
@凌驾
成功时公共无效(字符串响应){
试一试{
JSONObject jsonObj=新的JSONObject(响应);
JSONArray JSONArray=jsonObj.getJSONArray(“sacco_info”);
对于(int i=0;i我认为您已经将MaterialDrawer包含在gradle中,使用material drawer库作为模块。更新此特定的布局文件,该文件显示名称电子邮件和个人资料图片的数据
将公司编号标签放在name参数的正下方,然后再次构建并重新加载应用程序。您可以使用提供的id访问该标签
布局XML文件链接
[https://github.com/mikepenz/MaterialDrawer/blob/develop/app/src/main/res/layout/material_drawer_compact_persistent_header.xml][1]