diff --git a/example/main.js b/example/main.js
index 6901143f5e..c4dba81b1e 100644
--- a/example/main.js
+++ b/example/main.js
@@ -7,6 +7,7 @@ import { Icon } from 'react-native-elements';
import Home from './src/drawer/home';
import SwipeDecker from './src/drawer/swipe_decker';
import Ratings from './src/drawer/ratings';
+import Pricing from './src/drawer/pricing';
const SCREEN_WIDTH = Dimensions.get('window').width;
@@ -39,6 +40,10 @@ const MainRoot = DrawerNavigator(
path: '/ratings',
screen: Ratings,
},
+ Pricing: {
+ path: '/pricing',
+ screen: Pricing,
+ },
},
{
initialRouteName: 'Home',
diff --git a/example/src/drawer/home.js b/example/src/drawer/home.js
index 38a729dc83..9e8336ae3d 100644
--- a/example/src/drawer/home.js
+++ b/example/src/drawer/home.js
@@ -4,7 +4,8 @@ import { TabNavigator } from 'react-navigation';
import { Icon } from 'react-native-elements';
import ButtonsTab from '../tabs/buttons';
-import IconsTab from '../tabs/icons';
+import ListsTab from '../tabs/lists';
+import FormsTab from '../tabs/forms';
import FontsTab from '../tabs/fonts';
const Home = TabNavigator(
@@ -24,16 +25,26 @@ const Home = TabNavigator(
),
},
},
- IconsTab: {
- screen: IconsTab,
- path: '/icons',
+ ListsTab: {
+ screen: ListsTab,
+ path: '/lists',
navigationOptions: {
- tabBarLabel: 'Icons',
+ tabBarLabel: 'Lists',
+ tabBarIcon: ({ tintColor, focused }) => (
+
+ ),
+ },
+ },
+ FormsTab: {
+ screen: FormsTab,
+ path: '/forms',
+ navigationOptions: {
+ tabBarLabel: 'Forms',
tabBarIcon: ({ tintColor, focused }) => (
),
diff --git a/example/src/drawer/pricing.js b/example/src/drawer/pricing.js
new file mode 100644
index 0000000000..7f44258f26
--- /dev/null
+++ b/example/src/drawer/pricing.js
@@ -0,0 +1,32 @@
+import Expo from 'expo';
+import React from 'react';
+import { StackNavigator } from 'react-navigation';
+import { Icon } from 'react-native-elements';
+
+import Pricing from '../views/pricing';
+
+const PricingDrawerItem = StackNavigator({
+ Pricing: {
+ screen: Pricing,
+ },
+});
+
+PricingDrawerItem.navigationOptions = {
+ drawerLabel: 'Pricing',
+ drawerIcon: ({ tintColor }) => (
+
+ ),
+};
+
+export default PricingDrawerItem;
diff --git a/example/src/tabs/forms.js b/example/src/tabs/forms.js
new file mode 100644
index 0000000000..9f778bcf42
--- /dev/null
+++ b/example/src/tabs/forms.js
@@ -0,0 +1,36 @@
+import Expo from 'expo';
+import React, { Component } from 'react';
+import { View, Text, StyleSheet } from 'react-native';
+
+import { StackNavigator } from 'react-navigation';
+
+import FormsHome from '../views/forms_home';
+import FormsDetails from '../views/forms_details';
+
+const FormsTabView = ({ navigation }) => ;
+
+const FormsDetailTabView = ({ navigation }) => (
+
+);
+
+const FormsTab = StackNavigator({
+ Forms: {
+ screen: FormsTabView,
+ path: '/',
+ navigationOptions: {
+ title: 'Forms',
+ },
+ },
+ Forms_Detail: {
+ screen: FormsDetailTabView,
+ path: '/forms_detail',
+ navigationOptions: {
+ title: 'Forms Detail',
+ },
+ },
+});
+
+export default FormsTab;
diff --git a/example/src/tabs/icons.js b/example/src/tabs/icons.js
deleted file mode 100644
index 1ed47487ba..0000000000
--- a/example/src/tabs/icons.js
+++ /dev/null
@@ -1,35 +0,0 @@
-import Expo from 'expo';
-import React, { Component } from 'react';
-import { View, Text, StyleSheet } from 'react-native';
-
-import { StackNavigator } from 'react-navigation';
-
-import IconsHome from '../views/icons_home';
-import IconsDetails from '../views/icons_detail';
-
-const IconsTabView = ({ navigation }) => (
-
-);
-
-const IconsDetailTabView = ({ navigation }) => (
-
-);
-
-const IconsTab = StackNavigator({
- Home: {
- screen: IconsTabView,
- path: '/',
- navigationOptions: () => ({
- title: 'Icons',
- }),
- },
- Icons_Detail: {
- screen: IconsDetailTabView,
- path: 'icons_detail',
- navigationOptions: {
- title: 'Icons Detail',
- },
- },
-});
-
-export default IconsTab;
diff --git a/example/src/tabs/lists.js b/example/src/tabs/lists.js
new file mode 100644
index 0000000000..98afcac0fb
--- /dev/null
+++ b/example/src/tabs/lists.js
@@ -0,0 +1,35 @@
+import Expo from 'expo';
+import React, { Component } from 'react';
+import { View, Text, StyleSheet } from 'react-native';
+
+import { StackNavigator } from 'react-navigation';
+
+import ListsHome from '../views/lists_home';
+import ListsDetails from '../views/lists_detail';
+
+const ListsTabView = ({ navigation }) => (
+
+);
+
+const ListsDetailTabView = ({ navigation }) => (
+
+);
+
+const ListsTab = StackNavigator({
+ Home: {
+ screen: ListsTabView,
+ path: '/',
+ navigationOptions: () => ({
+ title: 'Lists',
+ }),
+ },
+ Lists_Detail: {
+ screen: ListsDetailTabView,
+ path: 'lists_detail',
+ navigationOptions: {
+ title: 'Lists Detail',
+ },
+ },
+});
+
+export default ListsTab;
diff --git a/example/src/views/buttons_home.js b/example/src/views/buttons_home.js
index 0cc141c5eb..69257b7b64 100644
--- a/example/src/views/buttons_home.js
+++ b/example/src/views/buttons_home.js
@@ -2,7 +2,7 @@ import Expo from 'expo';
import React, { Component } from 'react';
import { View, ScrollView, StyleSheet, Platform } from 'react-native';
-import { Text, Button, Icon } from 'react-native-elements';
+import { Text, Button, Icon, SocialIcon, Card } from 'react-native-elements';
import colors from 'HSColors';
import socialColors from 'HSSocialColors';
@@ -20,7 +20,7 @@ class Buttons extends Component {
- Buttons
+ Buttons & Icons
+
+
+ navigation.navigate('Icons_Detail')}
+ type="font-awesome"
+ color="#e14329"
+ name="hashtag"
+ />
+ console.log('hello')}
+ type="font-awesome"
+ color="#02b875"
+ name="rocket"
+ />
+ console.log('hello')}
+ color="#000000"
+ name="snapchat-ghost"
+ type="font-awesome"
+ />
+ console.log('hello')}
+ />
+ console.log('hello')}
+ />
+
+
+ console.log('hello')}
+ />
+ console.log('hello')}
+ />
+ console.log('hello')}
+ />
+ console.log('hello')}
+ />
+ console.log('hello')}
+ />
+
+
+ console.log('hello')}
+ />
+ console.log('hello')}
+ />
+ console.log('hello')}
+ />
+ console.log('hello')}
+ />
+ console.log('hello')}
+ />
+
+
+ console.log('hello')}
+ />
+ console.log('hello')}
+ />
+ console.log('hello')}
+ />
+ console.log('hello')}
+ />
+ console.log('hello')}
+ />
+
+
+ console.log('hello')}
+ />
+ console.log('hello')}
+ />
+ console.log('hello')}
+ />
+ console.log('hello')}
+ />
+ console.log('hello')}
+ />
+
+
+
+
+ console.log('hi!')}
+ />
+ console.log('hi2!')} />
+ console.log('hi3!')} />
+
+
+
+
+ console.log('hi!')}
+ />
+ console.log('hi2!')} />
+ console.log('hi3!')} />
+
+
+
+
+
+
+ console.log('hi!')}
+ />
+ console.log('hi2!')}
+ />
+ console.log('hi3!')}
+ />
+
+
+
+
+
+
+
+
+
+
+
);
}
@@ -183,6 +423,10 @@ const styles = StyleSheet.create({
},
}),
},
+ socialRow: {
+ flexDirection: 'row',
+ justifyContent: 'space-around',
+ },
});
export default Buttons;
diff --git a/example/src/views/forms_details.js b/example/src/views/forms_details.js
new file mode 100644
index 0000000000..7f1673707d
--- /dev/null
+++ b/example/src/views/forms_details.js
@@ -0,0 +1,24 @@
+import Expo from 'expo';
+import React, { Component } from 'react';
+import { View, ScrollView, StyleSheet, Platform } from 'react-native';
+
+import { Text, Button, Icon, Card } from 'react-native-elements';
+
+import colors from 'HSColors';
+import socialColors from 'HSSocialColors';
+import fonts from 'HSFonts';
+
+class FormsDetail extends Component {
+ render() {
+ const { navigation } = this.props;
+
+ return (
+
+ );
+ }
+}
+
+export default FormsDetail;
diff --git a/example/src/views/forms_home.js b/example/src/views/forms_home.js
new file mode 100644
index 0000000000..6e52f3e8f9
--- /dev/null
+++ b/example/src/views/forms_home.js
@@ -0,0 +1,183 @@
+import React, { Component } from 'react';
+import { ScrollView, View, StyleSheet } from 'react-native';
+import colors from 'HSColors';
+import Icon from 'react-native-vector-icons/MaterialIcons';
+
+import {
+ Button,
+ Text,
+ FormInput,
+ FormLabel,
+ CheckBox,
+ SearchBar,
+} from 'react-native-elements';
+
+class Forms extends Component {
+ render() {
+ return (
+
+
+
+ Forms
+
+ Name
+
+
+ Address
+
+
+
+ Phone
+
+
+
+ );
+ }
+}
+
+styles = StyleSheet.create({
+ headingContainer: {
+ justifyContent: 'center',
+ alignItems: 'center',
+ padding: 40,
+ backgroundColor: colors.secondary2,
+ },
+ heading: {
+ color: 'white',
+ marginTop: 10,
+ fontSize: 22,
+ },
+ labelContainerStyle: {
+ marginTop: 8,
+ },
+});
+
+export default Forms;
diff --git a/example/src/views/icons_home.js b/example/src/views/icons_home.js
deleted file mode 100644
index c14296598b..0000000000
--- a/example/src/views/icons_home.js
+++ /dev/null
@@ -1,578 +0,0 @@
-import Expo from 'expo';
-import React, { Component } from 'react';
-import {
- View,
- ScrollView,
- StyleSheet,
- Platform,
- Image,
- TouchableHighlight,
-} from 'react-native';
-
-import {
- Text,
- Card,
- SocialIcon,
- Divider,
- ButtonGroup,
- Slider,
- Tile,
- Grid,
- Col,
- Row,
- Avatar,
- Icon,
-} from 'react-native-elements';
-
-import colors from 'HSColors';
-
-const users = [
- {
- name: 'brynn',
- avatar: 'https://s3.amazonaws.com/uifaces/faces/twitter/brynn/128.jpg',
- },
- {
- name: 'thot leader',
- avatar: 'https://s3.amazonaws.com/uifaces/faces/twitter/evagiselle/128.jpg',
- },
- {
- name: 'jsa',
- avatar: 'https://s3.amazonaws.com/uifaces/faces/twitter/jsa/128.jpg',
- },
- {
- name: 'talhaconcepts',
- avatar: 'https://s3.amazonaws.com/uifaces/faces/twitter/talhaconcepts/128.jpg',
- },
- {
- name: 'andy vitale',
- avatar: 'https://s3.amazonaws.com/uifaces/faces/twitter/andyvitale/128.jpg',
- },
- {
- name: 'katy friedson',
- avatar: 'https://s3.amazonaws.com/uifaces/faces/twitter/kfriedson/128.jpg',
- },
-];
-
-class Icons extends Component {
- constructor() {
- super();
- this.state = {
- selectedIndex: 0,
- value: 0.5,
- };
- this.updateIndex = this.updateIndex.bind(this);
- }
-
- updateIndex(selectedIndex) {
- this.setState({ selectedIndex });
- }
-
- render() {
- const { navigation } = this.props;
- const buttons = ['Button1', 'Button2'];
- const { selectedIndex } = this.state;
-
- return (
-
-
-
- Components
-
-
-
-
-
-
- {users.map((u, i) => {
- return (
-
-
- {u.name}
-
- );
- })}
-
-
- h1 Heading
- h2 Heading
- h3 Heading
- h4 Heading
- Normal Text
-
-
-
- navigation.navigate('Icons_Detail')}
- type="font-awesome"
- color="#e14329"
- name="hashtag"
- />
- console.log('hello')}
- type="font-awesome"
- color="#02b875"
- name="rocket"
- />
- console.log('hello')}
- color="#000000"
- name="snapchat-ghost"
- type="font-awesome"
- />
- console.log('hello')}
- />
- console.log('hello')}
- />
-
-
- console.log('hello')}
- />
- console.log('hello')}
- />
- console.log('hello')}
- />
- console.log('hello')}
- />
- console.log('hello')}
- />
-
-
-
- console.log('hello')}
- />
- console.log('hello')}
- />
- console.log('hello')}
- />
- console.log('hello')}
- />
- console.log('hello')}
- />
-
-
-
- console.log('hello')}
- />
- console.log('hello')}
- />
- console.log('hello')}
- />
- console.log('hello')}
- />
- console.log('hello')}
- />
-
-
- console.log('hello')}
- />
- console.log('hello')}
- />
- console.log('hello')}
- />
- console.log('hello')}
- />
- console.log('hello')}
- />
-
-
-
-
- console.log('hi!')}
- />
- console.log('hi2!')} />
- console.log('hi3!')}
- />
-
-
-
-
- console.log('hi!')}
- />
- console.log('hi2!')} />
- console.log('hi3!')}
- />
-
-
-
-
-
-
- console.log('hi!')}
- />
- console.log('hi2!')}
- />
- console.log('hi3!')}
- />
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- console.log('hello')}>
-
-
-
-
-
- Adam McArther
-
-
- Freelance developer
-
-
-
-
-
-
- this.setState({ value })}
- />
- Value: {this.state.value}
-
-
-
-
-
-
-
- {
- 'Tile pressed';
- }}
- width={310}
- />
-
-
-
-
- Visit
- Find out More
-
-
-
-
-
-
-
-
- console.log('Works!')}
- activeOpacity={0.7}
- />
-
-
- console.log('Works!')}
- activeOpacity={0.7}
- />
-
-
- console.log('Works!')}
- activeOpacity={0.7}
- />
-
-
- console.log('Works!')}
- activeOpacity={0.7}
- />
-
-
-
-
-
-
- );
- }
-}
-
-const styles = StyleSheet.create({
- container: {
- flex: 1,
- },
- headerContainer: {
- justifyContent: 'center',
- alignItems: 'center',
- padding: 40,
- backgroundColor: colors.secondary,
- },
- heading: {
- color: 'white',
- marginTop: 10,
- fontSize: 22,
- },
- fonts: {
- marginBottom: 8,
- },
- user: {
- flexDirection: 'row',
- marginBottom: 6,
- },
- image: {
- width: 30,
- height: 30,
- marginRight: 10,
- },
- name: {
- fontSize: 16,
- marginTop: 5,
- },
- social: {
- flexDirection: 'row',
- justifyContent: 'center',
- },
-});
-
-export default Icons;
diff --git a/example/src/views/icons_detail.js b/example/src/views/lists_detail.js
similarity index 100%
rename from example/src/views/icons_detail.js
rename to example/src/views/lists_detail.js
diff --git a/example/src/views/lists_home.js b/example/src/views/lists_home.js
new file mode 100644
index 0000000000..8efc3101cf
--- /dev/null
+++ b/example/src/views/lists_home.js
@@ -0,0 +1,415 @@
+import Expo from 'expo';
+import React, { Component } from 'react';
+import {
+ View,
+ ScrollView,
+ StyleSheet,
+ Image,
+ TouchableHighlight,
+ ListView,
+} from 'react-native';
+
+import {
+ Text,
+ Card,
+ ButtonGroup,
+ Slider,
+ Tile,
+ Grid,
+ Col,
+ Row,
+ Avatar,
+ Icon,
+ List,
+ ListItem,
+} from 'react-native-elements';
+
+import colors from 'HSColors';
+
+const users = [
+ {
+ name: 'brynn',
+ avatar: 'https://s3.amazonaws.com/uifaces/faces/twitter/brynn/128.jpg',
+ },
+ {
+ name: 'thot leader',
+ avatar: 'https://s3.amazonaws.com/uifaces/faces/twitter/evagiselle/128.jpg',
+ },
+ {
+ name: 'jsa',
+ avatar: 'https://s3.amazonaws.com/uifaces/faces/twitter/jsa/128.jpg',
+ },
+ {
+ name: 'talhaconcepts',
+ avatar: 'https://s3.amazonaws.com/uifaces/faces/twitter/talhaconcepts/128.jpg',
+ },
+ {
+ name: 'andy vitale',
+ avatar: 'https://s3.amazonaws.com/uifaces/faces/twitter/andyvitale/128.jpg',
+ },
+ {
+ name: 'katy friedson',
+ avatar: 'https://s3.amazonaws.com/uifaces/faces/twitter/kfriedson/128.jpg',
+ },
+];
+
+const log = () => console.log('this is an example method');
+
+const list1 = [
+ {
+ title: 'Appointments',
+ icon: 'av-timer',
+ },
+ {
+ title: 'Trips',
+ icon: 'flight-takeoff',
+ },
+ {
+ title: 'Passwords',
+ icon: 'fingerprint',
+ },
+ {
+ title: 'Pitches',
+ icon: 'lightbulb-outline',
+ },
+ {
+ title: 'Updates',
+ icon: 'track-changes',
+ },
+];
+
+const list2 = [
+ {
+ name: 'Amy Farha',
+ avatar_url: 'https://s3.amazonaws.com/uifaces/faces/twitter/ladylexy/128.jpg',
+ subtitle: 'Vice President',
+ },
+ {
+ name: 'Chris Jackson',
+ avatar_url: 'https://s3.amazonaws.com/uifaces/faces/twitter/adhamdannaway/128.jpg',
+ subtitle: 'Vice Chairman',
+ },
+ {
+ name: 'Amanda Martin',
+ avatar_url: 'https://s3.amazonaws.com/uifaces/faces/twitter/brynn/128.jpg',
+ subtitle: 'CEO',
+ },
+ {
+ name: 'Christy Thomas',
+ avatar_url: 'https://s3.amazonaws.com/uifaces/faces/twitter/kfriedson/128.jpg',
+ subtitle: 'Lead Developer',
+ },
+ {
+ name: 'Melissa Jones',
+ avatar_url: 'https://s3.amazonaws.com/uifaces/faces/twitter/nuraika/128.jpg',
+ subtitle: 'CTO',
+ },
+];
+
+class Icons extends Component {
+ constructor() {
+ super();
+ const ds = new ListView.DataSource({
+ rowHasChanged: (r1, r2) => r1 !== r2,
+ });
+
+ this.state = {
+ selectedIndex: 0,
+ value: 0.5,
+ dataSource: ds.cloneWithRows(list1),
+ };
+
+ this.updateIndex = this.updateIndex.bind(this);
+ this.renderRow = this.renderRow.bind(this);
+ }
+
+ updateIndex(selectedIndex) {
+ this.setState({ selectedIndex });
+ }
+
+ renderRow(rowData, sectionID) {
+ return (
+
+ );
+ }
+
+ render() {
+ const { navigation } = this.props;
+ const buttons = ['Button1', 'Button2'];
+ const { selectedIndex } = this.state;
+
+ return (
+
+
+
+ Lists & More
+
+
+ {list2.map((l, i) => (
+
+ ))}
+
+
+
+
+ 5 months ago
+
+ }
+ avatar={require('../images/avatar1.jpg')}
+ />
+
+
+
+
+
+
+
+
+
+ {users.map((u, i) => {
+ return (
+
+
+ {u.name}
+
+ );
+ })}
+
+
+ h1 Heading
+ h2 Heading
+ h3 Heading
+ h4 Heading
+ Normal Text
+
+
+
+
+ console.log('hello')}>
+
+
+
+
+
+ Adam McArther
+
+
+ Freelance developer
+
+
+
+
+
+
+
+
+
+ {
+ 'Tile pressed';
+ }}
+ width={310}
+ />
+
+
+
+
+ Visit
+ Find out More
+
+
+
+
+
+
+
+
+ console.log('Works!')}
+ activeOpacity={0.7}
+ />
+
+
+ console.log('Works!')}
+ activeOpacity={0.7}
+ />
+
+
+ console.log('Works!')}
+ activeOpacity={0.7}
+ />
+
+
+ console.log('Works!')}
+ activeOpacity={0.7}
+ />
+
+
+
+
+
+
+ );
+ }
+}
+
+const styles = StyleSheet.create({
+ container: {
+ flex: 1,
+ },
+ headerContainer: {
+ justifyContent: 'center',
+ alignItems: 'center',
+ padding: 40,
+ backgroundColor: colors.secondary,
+ },
+ heading: {
+ color: 'white',
+ marginTop: 10,
+ fontSize: 22,
+ },
+ fonts: {
+ marginBottom: 8,
+ },
+ user: {
+ flexDirection: 'row',
+ marginBottom: 6,
+ },
+ image: {
+ width: 30,
+ height: 30,
+ marginRight: 10,
+ },
+ name: {
+ fontSize: 16,
+ marginTop: 5,
+ },
+ social: {
+ flexDirection: 'row',
+ justifyContent: 'center',
+ },
+ subtitleView: {
+ flexDirection: 'row',
+ paddingLeft: 10,
+ paddingTop: 5,
+ },
+ ratingImage: {
+ height: 19.21,
+ width: 100,
+ },
+ ratingText: {
+ paddingLeft: 10,
+ color: 'grey',
+ },
+});
+
+export default Icons;
diff --git a/example/src/views/pricing.js b/example/src/views/pricing.js
new file mode 100644
index 0000000000..58ca9c1ecd
--- /dev/null
+++ b/example/src/views/pricing.js
@@ -0,0 +1,79 @@
+import React, { Component } from 'react';
+import { ScrollView, View, StyleSheet } from 'react-native';
+import colors from 'HSColors';
+import Icon from 'react-native-vector-icons/MaterialIcons';
+
+import { PricingCard, Text } from 'react-native-elements';
+
+class Pricing extends Component {
+ render() {
+ return (
+
+
+
+ Pricing
+
+
+
+
+
+ );
+ }
+}
+
+Pricing.navigationOptions = {
+ title: 'Pricing',
+};
+
+const styles = StyleSheet.create({
+ hero: {
+ justifyContent: 'center',
+ alignItems: 'center',
+ padding: 40,
+ backgroundColor: colors.primary2,
+ },
+ heading: {
+ color: 'white',
+ marginTop: 10,
+ fontSize: 22,
+ },
+ titleText: {
+ fontSize: 25,
+ fontWeight: 'bold',
+ textAlign: 'center',
+ paddingVertical: 5,
+ fontFamily: 'Menlo-Bold',
+ color: '#27ae60',
+ },
+ subtitleText: {
+ fontSize: 18,
+ fontWeight: '400',
+ textAlign: 'center',
+ fontFamily: 'Trebuchet MS',
+ color: '#34495e',
+ },
+ viewContainer: {
+ justifyContent: 'center',
+ alignItems: 'center',
+ },
+});
+
+export default Pricing;