All Projects → mutualmobile → SeatLayout

mutualmobile / SeatLayout

Licence: Apache-2.0 License
A seat selection library for Android with an example for selecting seats for flights, sports venue, theatres, etc

Programming Languages

java
68154 projects - #9 most used programming language
kotlin
9241 projects

Projects that are alternatives of or similar to SeatLayout

PlantShopUI-Android
Check out the new style for App Design aims for the Online Plant Shop Service using jetpack compose...😉😀😁😎
Stars: ✭ 29 (-3.33%)
Mutual labels:  android-application, android-ui, android-app
FutureFurnitureUI-Android
Check out the new style for App Design aims for Furniture E-commerce...😉😀😁😎
Stars: ✭ 117 (+290%)
Mutual labels:  android-application, android-ui, android-app
Vectorifydahome
📱 Minimal app to apply wallpapers from a vast (400+) collection of vector graphics 🙃
Stars: ✭ 119 (+296.67%)
Mutual labels:  android-application, android-ui, android-app
Mediapicker
Easy customizable picker for all your needs in Android application
Stars: ✭ 105 (+250%)
Mutual labels:  android-application, android-ui, android-app
Moviebookingui Android
This is a concept of fetching a user's cinema show details like venue, movie, date & showtime before allowing him to place a cinema F&B order.
Stars: ✭ 62 (+106.67%)
Mutual labels:  movies, android-application, android-ui
Cameraxdemo
A sample camera app with CameraX API from Android Jetpack
Stars: ✭ 112 (+273.33%)
Mutual labels:  android-application, android-ui, android-app
Ibackdrop
A library to simply use Backdrop in your project (make it easy). Read more ->
Stars: ✭ 137 (+356.67%)
Mutual labels:  android-application, android-ui, android-app
Testleavesloading
Android 自定义 View 之 LeavesLoading
Stars: ✭ 55 (+83.33%)
Mutual labels:  android-application, android-ui, android-app
Modern Android Development
Modern Android Development tools & key points
Stars: ✭ 219 (+630%)
Mutual labels:  android-application, android-ui, android-app
Bottomsheet
BottomSheet dialog library for Android
Stars: ✭ 219 (+630%)
Mutual labels:  android-application, android-ui, android-app
Busbookingui Android
Check out the new style for App Design aims for the Bus Booking Service...😉😀😁😎
Stars: ✭ 105 (+250%)
Mutual labels:  android-application, android-ui, android-app
Extract-Color-Palette-Api
Create gradient drawable by extracting prominent colors from image⚫⚪
Stars: ✭ 16 (-46.67%)
Mutual labels:  android-application, android-ui, android-app
Datingapp
Dating UI kit is used for online meet up with girls and boys . The screen contains more than 30 icons and most of all required elements required to design an application like this. The XML and JAVA files contains comments at each and every point for easy understanding. Everything was made with a detail oriented style and followed by today's web trends. Clean coded & Layers are well-organized, carefully named, and grouped.
Stars: ✭ 97 (+223.33%)
Mutual labels:  android-application, android-ui, android-app
Android Inappbilling
A sample which uses Google's Play Billing Library and it does InApp Purchases and Subscriptions.
Stars: ✭ 114 (+280%)
Mutual labels:  android-application, android-ui, android-app
Edxposedmanager
Companion Android application for EdXposed
Stars: ✭ 1,172 (+3806.67%)
Mutual labels:  android-application, android-ui, android-app
Shotang App
The New Home Screen is designed in a modular way with the core focus on product discovery. Search, Deals, Products everything has been brought upfront. The hamburger menu has been replaced with a bottom navigation bar for easy reachability. On the tech side too, this design allows us to run new deals and other experiments in an agile manner which wasn't possible in the previous version.
Stars: ✭ 132 (+340%)
Mutual labels:  android-application, android-ui, android-app
Androidkex
Extensions for Kotlin. Use the power of Kotlin to make your code smaller and beautiful.
Stars: ✭ 35 (+16.67%)
Mutual labels:  android-application, android-ui, android-app
Phonenumberverificationui Android
Check out the new style for mobile number verification 😉😉😊😊
Stars: ✭ 52 (+73.33%)
Mutual labels:  android-application, android-ui, android-app
Zimlx
Open Source and free launcher for Android
Stars: ✭ 137 (+356.67%)
Mutual labels:  android-application, android-ui, android-app
media-picker
Easy customizable picker for all your needs in Android application
Stars: ✭ 167 (+456.67%)
Mutual labels:  android-application, android-ui, android-app

Seat Layout

Build Status

This library is an example implementation of an interactive seat layout which has the following features:

  • Pinch to zoom seat arrangement along
  • Optional zoom in/out button
  • Ability to have multiple seat types like available, sold, reserved, disabled seats etc
  • Clickable seats with animated popup showing selected seat information
  • Select or deselect multiple seats

Download the sample apk from HERE

How To Use

Since the requirement can be vastly different for different applications, we decided to post an example implementation rather than an injectable library.

This repo has two modules:

  • example: Which is an example app on how to use SeatLayout. Run this module to test the example app

  • seatlayout: This is the library that you need to add in your project as a module

SeatLayout has predefined data models and example JSON which you can edit to fit your needs. Following is a piece of brief information to help you do that:

Seat Layout expects an Array<Array<SeatData>> so that it can draw seats in the xy plain.

numberOfRows = seatDataArray.size;
numberOfColumnsInNthRow = seatDataArray[n].size

SeatData Model:

  • SeatData is the model that is used to represent each seat in the layout. It contains all the information that is required by SeatLayout for rendering the seat.
  • SeatData model contains the rowIndex, columnIndex, areaIndex, price, description(Any information that you want to provide when a user taps on the seat)
  • SeatStatus: NONE, EMPTY, SOLD, RESERVED, BROKEN, PLACEHOLDER, UNKNOWN, BUSY, CHOSEN, INFO
  • SeatStyle: NONE, NORMAL, BARSEAT, HANDICAP, COMPANION, UNKNOWN
  • TableStyle: NONE, SINGLE, PAIR_LEFT, PAIR_RIGHT, SIDE_TABLE_LEFT, SIDE_TABLE_RIGHT, LONG_LEFT, LONG_CENTER, LONG_RIGHT, LONG_GAP, LONG_GAP_LEFT, LONG_GAP_RIGHT, UNKNOWN

If you want callbacks, SeatView offers three callbacks right now using SeatListener:

  • maxSeatsReached()
  • seatTapped()
  • updateSelectedSeatDisplay(selectedSeats: Int, maxSelectedSeats: Int)
Contributors

License

Copyright 2019 Mutual Mobile

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].