小编Mil*_*era的帖子

如何在android中使用viewpager动态创建tab?

说明:

假设我有多个类别来自我的REST.我不知道它有多少类别是5,7或有时2等.我想用viewpager将所有类别放在我的选项卡上.我想根据类别大小创建一个选项卡.让我们看看例如假设在我的REST响应中只有2个类别它只创建两个选项卡.如果它有5个类别,那么5个标签,依此类推.

以下是创建选项卡的示例测试示例.

MainActivity.java

public class MainActivity extends AppCompatActivity {

    TabLayout tabLayout;
    ViewPager viewPager;
    Toolbar toolbar;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        toolbar=(Toolbar)findViewById(R.id.toolbar);
        setSupportActionBar(toolbar);

        tabLayout=(TabLayout)findViewById(R.id.tabs);
        viewPager=(ViewPager)findViewById(R.id.viewpager);

        setupViewPager(viewPager);
        viewPager.setCurrentItem(0);
        tabLayout.setupWithViewPager(viewPager);
    }
    private void setupViewPager(ViewPager viewPager) {
        ViewPagerAdapter adapter = new ViewPagerAdapter(getSupportFragmentManager());
        for(int i=0;i<3;i++){
            adapter.addFragment(new OneFragment(), "ONE");
//            adapter.addFragment(new TwoFragment(), "TWO");
            viewPager.setAdapter(adapter);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

ViewPagerAdapter.java

public class ViewPagerAdapter extends FragmentPagerAdapter {

    private final List<Fragment> mFragmentList = new ArrayList<>();
    private final List<String> mFragmentTitleList = new ArrayList<>();

    public ViewPagerAdapter(FragmentManager manager){
        super(manager); …
Run Code Online (Sandbox Code Playgroud)

java android android-tabs

12
推荐指数
1
解决办法
1万
查看次数

如何处理本机反应中的多个资源?

说明:我想在 react native 中使用标签显示图像。我在我的 src 目录中放置了一个图像,并在我的标签中从中加载本地图像。它工作正常。

问题

如果我们将此结构与我们的 android drawable 目录进行比较,那么我有一些疑问。

在android中,有五个drawable目录。下面列出了五个不同的可绘制目录:

drawable-mdpi drawable-hdpi drawable-xhdpi drawable-xxhdpi drawable-xxxhpi

在所有目录中,图像文件都具有相同的名称。根据设备密度,它使用了我们放入 drawable 目录中的资源。

我的问题是我们是否使用 react native 创建应用程序。为了满足不同密度设备的需求,drawable 目录的结构是什么?

react-native

3
推荐指数
1
解决办法
1931
查看次数

如何在react native&gt;中从一个屏幕导航到另一个屏幕?

说明:我正在使用android中的react native。我从登录屏幕开始,并使用API​​成功调用将参数传递到另一个屏幕。我使用StackNavigation来导航屏幕。成功登录后,它将移动到带有参数的另一个屏幕。

问题: API调用成功,但导航屏幕未更改。触发未定义之类的错误不是函数(评估'_this.props.navigator('SecondScreen')')

我已经将所有代码张贴在这里。

index.android.js //这是应用程序的入口点。它将校准第一个App.js。

/**
 * Sample React Native App
 * https://github.com/facebook/react-native
 * @flow
 */

import React,{Component} from 'react';
import {
    AppRegistry,
    StyleSheet,
    Text,
    View
} from 'react-native';

import App from './src/components/App';
import SecondScreen from './src/components/SecondScreen';
import {StackNavigator} from 'react-navigation';

export default class reactNavigationSample extends Component{
  render(){
      const {navigation} =this.props;
    return(
          <App navigation ={navigation}/>
    );
  }
}
const SampleApp = StackNavigator({
    Home:{screen:App},
    SecondScreen:{screen: SecondScreen}
});
AppRegistry.registerComponent('AwesomeProject', () => SampleApp);
Run Code Online (Sandbox Code Playgroud)

App.js

//此文件的UI是两个TextInput和Button。当我单击按钮时,它将调用登录方法,并且登录方法将使用可能的登录API凭据调用API。成功登录后,它应移至另一个屏幕。

export default class App extends …
Run Code Online (Sandbox Code Playgroud)

android react-native

2
推荐指数
1
解决办法
5645
查看次数

如何在 android 的标题中禁用可扩展列表视图图标?

ExpandableListView在android中创建了一个。我有一些类别,其中还有更多子类别。而其他则没有子类别。如果图标没有子类别,如何删除它?

例如,我有一个类别,如“主页”、“纱丽”等。在“主页”中,没有子类别,因此我需要删除可展开的展开图标。

这是我的content_home.xml,它有一个ExpandableListView

<?xml version="1.0" encoding="utf-8"?>
<android.support.v4.widget.DrawerLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/drawer_layout"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    app:layout_behavior="@string/appbar_scrolling_view_behavior"
    tools:context="com.domore.onlineangelnx.Home"
    tools:showIn="@layout/activity_home">

    <FrameLayout
        android:id="@+id/frame_container"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

    <!-- Listview to display slider menu -->
    <ExpandableListView
        android:id="@+id/list_slidermenu"
        android:layout_width="240dp"
        android:layout_height="match_parent"
        android:layout_gravity="start"
        android:divider="@color/list_divider"
        android:dividerHeight="1dp"
        android:listSelector="@drawable/list_selector"
        android:background="@color/list_background"/>
    <!--android:choiceMode="singleChoice"-->
</android.support.v4.widget.DrawerLayout>
Run Code Online (Sandbox Code Playgroud)

这是我的drawable_list_item.xml,有一个TextView显示ExpandableListView标题

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

    <TextView
        android:id="@+id/title"
        android:layout_width="wrap_content"
        android:layout_height="match_parent"
        android:paddingLeft="?android:attr/expandableListPreferredItemPaddingLeft"
        android:minHeight="?android:attr/listPreferredItemHeightSmall"
        android:textAppearance="?android:attr/textAppearanceListItemSmall"
        android:textColor="@color/list_item_title"
        android:gravity="center_vertical" />

</LinearLayout>
Run Code Online (Sandbox Code Playgroud)

这是我的ExpandableListViewAdapter,它计算项目及其子项目

package adapter;

import android.content.Context;
import android.graphics.Typeface;
import …
Run Code Online (Sandbox Code Playgroud)

android

1
推荐指数
1
解决办法
3548
查看次数

如何在android中的工具栏中应用渐变?

说明:我想在工具栏上应用渐变.我已经做了.我在style.xml中的应用程序主题上应用了这个渐变.

这是我的style.xml

<resources>

    <style name="MyMaterialTheme" parent="MyMaterialTheme.Base">

    </style>

    <style name="MyMaterialTheme.Base" parent="Theme.AppCompat.Light.DarkActionBar">
        <item name="windowNoTitle">true</item>
        <item name="windowActionBar">false</item>
        <item name="colorPrimary">@drawable/toolbar_gradient</item>
        <item name="colorPrimaryDark">@color/colorPrimaryDark</item>
        <item name="colorAccent">@color/colorAccent</item>
    </style>
    <style name="MyMaterialTheme.AppBarOverlay" parent="ThemeOverlay.AppCompat.Dark.ActionBar" />
    <style name="MyMaterialTheme.PopupOverlay" parent="ThemeOverlay.AppCompat.Light" />

    <style name="MyTabLayoutTextAppearance" parent="TextAppearance.AppCompat.Widget.ActionBar.Title.Inverse">
        <item name="android:textSize">16sp</item>
        <item name="android:textAllCaps">true</item>
    </style>

</resources>
Run Code Online (Sandbox Code Playgroud)

这是我的gradient.xml

<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
    android:shape="rectangle">
    <gradient
        android:type="linear"
        android:startColor="@color/upper"
        android:endColor="@color/bottom"
        android:angle="270"/>
</shape>
Run Code Online (Sandbox Code Playgroud)

这是我的color.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>

    <color name="main_background">#FFFFFF</color>
    <!--009788  26A69A-->
    <color name="colorPrimary">#009788</color>
    <color name="colorPrimaryDark">#E53935</color><!--00695C-->

    <color name="dull_color">#26A69A</color>
    <color name="colorAccent">#3F51B5</color>
    <color name="textColorPrimary">#FFFFFF</color>`
    <color name="txtColor">#000000</color>
    <color name="windowBackground">#FFFFFF</color>
    <color name="navigationBarColor">#000000</color>
    <color name="counter_text_bg">#f32f32</color>
    <color name="list_background">#FFFFFF</color> …
Run Code Online (Sandbox Code Playgroud)

android

0
推荐指数
1
解决办法
1481
查看次数

标签 统计

android ×4

react-native ×2

android-tabs ×1

java ×1