我需要创建一个扩展的基类,Activity
它可以在我的应用程序中执行一些常见任务,并通过以下形式扩展我的活动:
public BaseActivity扩展Activity {....}
public SubActivity扩展了BaseActivity {...}
在SubActivity中我需要为BaseActivity中定义的一些变量和UI组件赋值,我可能需要根据某个标志值为SubActivity定义不同的布局,同样(在SubActivity中)我想执行在BaseActivity中定义的asyncTask.
这可能吗?如果是的话,是否有任何可能有帮助的教程?先感谢您
我正在研究一个Android项目,我正在尝试使用http://developer.android.com/training/implementing-navigation/nav-drawer.html中的示例集成新的导航抽屉.
除了一件事,它主要工作,动作栏向上按钮不显示菜单,但如果我从边缘在主活动屏幕上滑动手指,则菜单出现,所以我知道实际菜单没有任何问题,它只是动作栏按钮.
下面是代码
public class MainActivity extends Activity {
private DrawerLayout mDrawerLayout;
private ListView mDrawerList;
private ActionBarDrawerToggle mDrawerToggle;
private CharSequence mTitle;
private CharSequence mDrawerTitle;
private String[] mPlanetTitles;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mTitle = mDrawerTitle = getTitle();
mPlanetTitles = getResources().getStringArray(R.array.planets_array);
mDrawerLayout = (DrawerLayout)findViewById(R.id.drawer_layout);
mDrawerList = (ListView)findViewById(R.id.left_drawer);
MenuItemAdapter menuAdapter = new MenuItemAdapter(this);
menuAdapter.add(new MenuItem("Hello"));
menuAdapter.add(new MenuItem("World"));
menuAdapter.add(new MenuItem("Parsnips"));
menuAdapter.add(new MenuItem("Turnips"));
mDrawerList.setAdapter(menuAdapter);
mDrawerList.setOnItemClickListener(new DrawerItemClickListener());
getActionBar().setDisplayHomeAsUpEnabled(true);
getActionBar().setHomeButtonEnabled(true);
mDrawerToggle = new ActionBarDrawerToggle(
this,
mDrawerLayout,
R.drawable.ic_drawer,
R.string.drawer_open,
R.string.drawer_closed)
{
public …
Run Code Online (Sandbox Code Playgroud) 我想在android中使用我自己的字体导航抽屉.我根据这个答案使用了android studio附带的库:https://stackoverflow.com/a/23632492/4393226.但我不知道如何更改字体并使其成为RTL.我搜索了很多,我发现了如何制作抽屉RTL.我用这个代码:
getWindow().getDecorView().setLayoutDirection(View.LAYOUT_DIRECTION_RTL);
Run Code Online (Sandbox Code Playgroud)
但正如您所知,这仅适用于API 17及更高版本.请帮忙!如何更改菜单字体?如何以正确的方式进行布局RTL?!
编辑:我的字体"TTF"文件是资产/字体,我知道如何使用java设置文本视图,但我不知道如何将其设置为导航抽屉菜单.
假设用户已在手机上登录其Google+帐户,那么如何才能将Google+图片(通告)和Google+封面照片放入Android应用的导航抽屉中?这有API吗?另外,我们如何将个人资料照片显示为圆圈?我试图实现与Android INBOX应用程序相同的导航抽屉UI.
我想删除子菜单中创建的不需要的空间.
有没有可能我可以从menu.xml
课堂上实现它?
这是我的 navigation_drawer_menu.xml
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<group android:checkableBehavior="single">
<item
android:id="@+id/all"
android:checked="true"
android:icon="@drawable/ic_channels"
android:title="All Channels" />
.......
<item
android:id="@+id/other"
android:icon="@drawable/ic_other"
android:title="Others" />
</group>
<item android:title="">
<menu>
<item
android:id="@+id/setting"
android:icon="@drawable/ic_action_settings"
android:title="Settings" />
<item
android:id="@+id/about"
android:icon="@drawable/ic_about"
android:title="About" />
<item
android:id="@+id/share"
android:icon="@drawable/ic_share"
android:title="Share" />
</menu>
</item>
Run Code Online (Sandbox Code Playgroud)
谢谢.
我正在尝试类似于Play商店的导航抽屉设计App:我已经让菜单部分工作正常,但我想在菜单顶部添加个人资料图片和用户ID,如下图所示.我不确定如何实现这一部分:
我尝试了以下代码并将其添加到xml中,其中包含要显示的项目列表.
<LinearLayout
android:id="@+id/LinearLayoutFrom1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="left|center"
android:background="@drawable/bg"
android:orientation="horizontal" >
<ImageView
android:id="@+id/clear1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/profilepic" />
<TextView
android:id="@+id/textViewName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:gravity="center"
android:text="UserID"
android:textColor="#FFFFFF"
android:textSize="15sp"
android:textStyle="bold" />
</LinearLayout>
Run Code Online (Sandbox Code Playgroud)
但这只是为每个列表项添加背景和文本.
我如何实现上述设计?
更新1:
我在XML中尝试了以下内容:
<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" >
<FrameLayout
android:id="@+id/framelayoutid"
android:layout_width="match_parent"
android:layout_height="match_parent" />
<LinearLayout
android:id="@+id/LinearLayoutFrom1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/bg"
android:orientation="vertical" >
<LinearLayout
android:id="@+id/LinearLayoutFrom2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:orientation="horizontal"
android:layout_weight=".20" >
<ImageView
android:id="@+id/clear1"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:src="@drawable/profilepic" />
</LinearLayout>
<LinearLayout
android:id="@+id/LinearLayoutFrom3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight=".80"
android:orientation="horizontal" >
<TextView
android:id="@+id/textViewName"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:text="UserID"
android:textColor="#FFFFFF"
android:textSize="15sp"
android:textStyle="bold" />
</LinearLayout> …
Run Code Online (Sandbox Code Playgroud) 我是初学者.我想知道,如何添加一个项目,Navigation Drawer
其中的图标将添加到项目标题的右侧.
我想要像这张照片一样.
但是怎么样?我想要像这个Youtube项目一样添加项目.
这是Navigation Drawer
菜单:
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android">
<item android:title="Social Links">
<menu>
<item
android:id="@+id/nav_facebook"
android:icon="@drawable/ic_menu_facebook"
android:title="Facebook"
/>
<item
android:id="@+id/nav_youtube"
android:icon="@drawable/ic_menu_youtube"
android:title="Youtube"
/>
<item
android:id="@+id/nav_twitter"
android:icon="@drawable/ic_menu_twitter"
android:title="Twitter"
/>
</menu>
</item>
</menu>
Run Code Online (Sandbox Code Playgroud)
我还将此代码附加到Manifest
:
android:supportsRtl="true"
Run Code Online (Sandbox Code Playgroud) 您可能见过 Gmail 等应用程序的侧面导航抽屉。但是如何使用自定义小部件制作这样一个抽屉,例如我展示了一个导航抽屉,其中随机放置了一些小部件:
我想使用constraintLayout
导航视图内部。基本上,我希望它是一个正常的布局/视图,占据一定比例的屏幕并具有滑入和滑出动画。
如果你不添加app:menu=@menu/menu_nav
,那么它基本上会崩溃,如果你添加一个空白菜单,那么你不能只将constraintLayout放在导航菜单中,你必须将constraintLayout放在FrameLayout中......最后它没有无法正常工作,假设您在 imageView 中使用匹配约束,则图像不会显示,尽管硬编码字符串目前可以,但这并不能真正解决视图动态的问题。
android ×8
drawer ×1
extends ×1
fonts ×1
google-plus ×1
java ×1
layout ×1
menuitem ×1
navigation ×1
submenu ×1