小编Phi*_*oda的帖子

如何使用不同的片段/布局实现ViewPager

当我启动一个实现viewpager的活动时,viewpager创建了各种片段.我想为每个片段使用不同的布局,但问题是viewpager在最大值时只显示两个布局(在1之后的所有剩余片段上的第二个布局).

以下是实现viewpager的SwipeActivity的代码:

public class SwipeActivity extends FragmentActivity
{

    MyPageAdapter pageAdapter;

    @Override
    protected void onCreate(Bundle savedInstanceState)
    {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_swipe);
        pageAdapter = new MyPageAdapter(getSupportFragmentManager());
        ViewPager pager=(ViewPager)findViewById(R.id.pager);
        pager.setAdapter(pageAdapter);
        ActionBar bar = getActionBar();
        bar.setDisplayHomeAsUpEnabled(true);
    }
    /**
    * Custom Page adapter
    */
    private class MyPageAdapter extends FragmentPagerAdapter
    {
        public MyPageAdapter(FragmentManager fm)
        {
            super(fm);
        }
        @Override
        public int getCount()
        {
            return 5;
        }
        @Override
        public Fragment getItem(int position)
        {
            switch(position)
            {
                case 0: return new MyFragment();
                case 1: return SecondFragment.newInstance("asdasd");
                default : return RamFragment.newInstance("s"); …
Run Code Online (Sandbox Code Playgroud)

android android-layout android-fragments android-viewpager fragmentpageradapter

188
推荐指数
3
解决办法
26万
查看次数

应用可以使用的最大RAM量是多少?

我对这个关于Android操作系统内存管理的问题很好奇,所以我希望对这个主题有一个非常详细的答案.

我想知道的是:

  • Android应用程序(不是系统应用程序)可以使用的最大内存量(以兆字节 / 占总RAM的百分比)是多少?
  • Android版本之间有什么区别吗?
  • 有关设备制造商的任何差异吗?

最重要的是:

  • 当系统确定应用程序在运行时可以使用多少RAM时(假设每个应用程序的内存最大值不是静态数字),它是什么/它取决于什么

到目前为止我所听到的(直到2013年):

  • 早期的Android设备每个应用上限为16MB
  • 后来这个上限增加到24MB或32MB

是什么让我很好奇:

这两个限制都非常低.

我刚刚下载了Android任务管理器来检查我的设备RAM.我注意到有些应用程序使用大约40-50兆字节的RAM,这比上面提到的最大RAM使用量(比如说32 MB)要多得多.那么Android如何确定应用程序可以使用多少RAM?应用程序如何超出此限制?

此外,我注意到当使用大约30-40兆字节时,我的一些应用程序崩溃(被系统杀死?)和OutOfMemoryException.另一方面,我的手机上运行的应用程序使用100 MB以上的一段时间后(可能由于内存泄漏)不会崩溃或被杀死.因此,在确定可以节省多少RAM时,显然还取决于应用程序本身.这怎么可能?(我用带有768 MB RAM的HTC One S进行了测试)

免责声明:我不以任何方式与Android任务管理器应用程序相关联.

memory android memory-management out-of-memory android-memory

140
推荐指数
3
解决办法
6万
查看次数

片段生命周期 - 在显示/隐藏时调用哪个方法?

我使用以下方法通过显示/隐藏它们来切换片段(在我的NavigationDrawer中).

protected void showFragment(int container, Fragment fragment, String tag, String lastTag, boolean addToBackStack ) {

        FragmentManager fragmentManager = getSupportFragmentManager();
        FragmentTransaction transaction = fragmentManager.beginTransaction();

        if ( lastTag != null && !lastTag.equals("")) {
            Fragment lastFragment = fragmentManager.findFragmentByTag( lastTag );
            if ( lastFragment != null ) {
                transaction.hide( lastFragment );
            }
        }

        if ( fragment.isAdded() ) {
            transaction.show( fragment );
        }
        else {
            transaction.add( container, fragment, tag );
        }

        if ( addToBackStack ) {
            transaction.addToBackStack( tag );
        }

        transaction.commit();

        // set the active …
Run Code Online (Sandbox Code Playgroud)

lifecycle android android-fragments fragmenttransaction

95
推荐指数
4
解决办法
7万
查看次数

如何设置自定义ActionBar颜色/样式?

Android Navigation bar在我的项目中使用,我想将动作栏中的顶部颜色更改为红色,我该怎么做?我有这样的事情,

顶黑

我想要这样的东西,

顶红

我怎么能实现这一目标?

android background colors android-actionbar navigation-drawer

85
推荐指数
6
解决办法
20万
查看次数

如何隐藏MPAndroidChart中的图例和轴?

他们是否有可能隐藏这张照片中的所有圆形物品.

在此输入图像描述

我使用了以下代码,

public void setDataList(List<HorizontalBarChartData> dataList, Resources resources) {

    ArrayList<String> categories = new ArrayList<String>();
    ArrayList<BarEntry> values = new ArrayList<BarEntry>();
    ArrayList<BarDataSet> dataSets = new ArrayList<BarDataSet>();
    BarDataSet set1;
    for (int i = 0; i < dataList.size(); i++) {
        categories.add(dataList.get(i).getName());
        values.add(new BarEntry(dataList.get(i).getValue(), i));
    }

    /*set1 = new BarDataSet(values, "Income, Expense, Disposable Income");*/
    set1 = new BarDataSet(values, "Category 1, Category 2, Category 3");
    set1.setBarSpacePercent(35f);
    set1.setColors(new int[]{resources.getColor(R.color.cyan_blue), resources.getColor(R.color.vermilion_tint), resources.getColor(R.color.sea_green)});
    dataSets.add(set1);

    BarData data = new BarData(categories, dataSets);
    data.setValueTextSize(10f);

    horizontalBarChart.setData(data);
}
Run Code Online (Sandbox Code Playgroud)

更新

如何隐藏此图像中的圆角部分?

在此输入图像描述

android mpandroidchart

50
推荐指数
4
解决办法
4万
查看次数

如何在Android WebView中更改FontSize?

如何手动更改webview的字体大小?例如,当在webview中加载页面时,字体大小就像是24pt.对于我的android屏幕来说太大了.我查看了"网络设置",但似乎两者没有关系.

谢谢

android font-size android-webview android-fonts

38
推荐指数
4
解决办法
5万
查看次数

如何从MPAndroidChart中的图表中删除描述?

我正在使用MPAndroidChart.

如何从中删除说明PieChart?我可以删除Legendwith chart.setDrawLegend(false),但我找不到任何关于文档中的图表描述.

android mpandroidchart

36
推荐指数
4
解决办法
3万
查看次数

升级mongodb没有任何效果,仍然显示旧版本

以下是我用于将我的mongodb版本从2.6.9升级到最新版本的命令,但它仍然显示我以前的版本.让我知道我在升级过程中遇到了什么问题.问题是mongod -version仍然显示升级后安装的旧版本.

我提到的文档 - Mongodb Docs

我遵循的步骤 -

  • sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10
  • echo"deb http://repo.mongodb.org/apt/ubuntu"$(lsb_release -sc)"/ mongodb-org/3.0 multiverse"| sudo tee /etc/apt/sources.list.d/mongodb-org-3.0.list
  • sudo apt-get update
  • sudo apt-get install -y mongodb-org

结果 -

Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be upgraded:
  mongodb-org
1 upgraded, 0 newly installed, 0 to remove and 139 not upgraded.
Need to get 3,608 B of archives.
After this operation, 0 B of additional …
Run Code Online (Sandbox Code Playgroud)

ubuntu mongodb

36
推荐指数
5
解决办法
2万
查看次数

如何将段分隔符/分隔符添加到ListView?

我正在为我的应用程序制作一个菜单,使用DrawerLayout和ArrayAdapter子类来实现看起来像Facebook的抽屉菜单.

我目前在创建列表时没有任何问题,但现在看起来不错,我想在不同类型的选项(即用户相关选项和应用程序相关选项)和菜单顶部的搜索栏之间添加分隔符.

我当前的ArrayAdaptor子类的代码如下:

public class DrawerMenuAdapter extends ArrayAdapter<String>{
    private Context context;
    private String[] values;
    private int resId;

    public DrawerMenuAdapter(Context context, int textViewResourceId, String[] values) {
        super(context, textViewResourceId, values);
        this.context = context;
        this.values = values;
        this.resId = textViewResourceId;
    }

    @Override
    public View getView(int position, View convertView, ViewGroup parent){
        LayoutInflater inflater = (LayoutInflater) context
                .getSystemService(Context.LAYOUT_INFLATER_SERVICE);
        View rowView = inflater.inflate(this.resId, parent, false);

        TextView elementText = (TextView)rowView.findViewById(R.id.element_text);
        ImageView elementImage = (ImageView)rowView.findViewById(R.id.element_icon);
        String textValue = values[position];

        elementText.setText(textValue);

        //This switch adds the icons to the related …
Run Code Online (Sandbox Code Playgroud)

android separator android-layout android-listview android-adapter

33
推荐指数
2
解决办法
7万
查看次数

如何通过编程方式关闭Android中的Dialog?

如何通过编程方式关闭android中的Dialog,例如按一个按钮?

想象一下,我有一个带有OK按钮的Dialog,想要通过OK按钮关闭它,但我不能这样做!

我用Google搜索并发现没什么用处,几乎所有这些都用于关闭AlertDialog而不是Dialog.

java android dialog android-alertdialog

31
推荐指数
4
解决办法
5万
查看次数