Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 10 additions & 10 deletions app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ apply plugin: 'com.android.application'

android {
compileSdkVersion 26
buildToolsVersion "26.0.1"
buildToolsVersion "26.0.3"
defaultConfig {
applicationId "com.nealgosalia.timetable"
minSdkVersion 15
Expand All @@ -19,15 +19,15 @@ android {
}

dependencies {
compile 'com.roughike:bottom-bar:2.0.2'
compile 'com.ncapdevi:frag-nav:1.2.5'
compile 'com.shawnlin:number-picker:2.4.4'
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.daimajia.numberprogressbar:library:1.2@aar'
implementation 'com.roughike:bottom-bar:2.0.2'
implementation 'com.ncapdevi:frag-nav:1.2.5'
implementation 'com.shawnlin:number-picker:2.4.4'
implementation fileTree(include: ['*.jar'], dir: 'libs')
implementation 'com.daimajia.numberprogressbar:library:1.4@aar'
//noinspection GradleCompatible
compile 'com.android.support:appcompat-v7:26.0.+'
compile 'com.android.support:design:26.0.+'
implementation 'com.android.support:appcompat-v7:26.1.0'
implementation 'com.android.support:design:26.1.0'
testCompile 'junit:junit:4.12'
compile 'com.android.support:support-v4:26.0.+'
compile 'com.android.support:recyclerview-v7:26.0.+'
implementation 'com.android.support:support-v4:26.1.0'
implementation 'com.android.support:recyclerview-v7:26.1.0'
}
102 changes: 0 additions & 102 deletions app/src/main/java/com/nealgosalia/timetable/MainActivity.java

This file was deleted.

95 changes: 95 additions & 0 deletions app/src/main/java/com/nealgosalia/timetable/MainActivity.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,95 @@
package com.nealgosalia.timetable

import android.support.v7.app.AppCompatActivity
import android.support.v4.app.Fragment
import android.content.Intent
import android.os.Bundle
import android.os.Handler
import android.support.annotation.IdRes
import android.view.Menu
import android.view.MenuItem
import android.widget.Toast

import com.ncapdevi.fragnav.FragNavController
import com.nealgosalia.timetable.activities.PreferencesActivity
import com.nealgosalia.timetable.fragments.AttendanceFragment
import com.nealgosalia.timetable.fragments.SubjectsFragment
import com.nealgosalia.timetable.fragments.TimetableFragment
import com.roughike.bottombar.BottomBar
import com.roughike.bottombar.OnTabReselectListener
import com.roughike.bottombar.OnTabSelectListener

import java.util.ArrayList

class MainActivity : AppCompatActivity() {

private val TAB_FIRST = FragNavController.TAB1
private val TAB_SECOND = FragNavController.TAB2
private val TAB_THIRD = FragNavController.TAB3
internal var doubleBackToExitPressedOnce = false
private var fragNavController: FragNavController? = null

@Override
protected fun onCreate(savedInstanceState: Bundle) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val fragments = ArrayList(3)
fragments.add(TimetableFragment())
fragments.add(AttendanceFragment())
fragments.add(SubjectsFragment())
fragNavController = FragNavController(savedInstanceState, getSupportFragmentManager(), R.id.contentContainer, fragments, TAB_FIRST)
val bottomBar = findViewById(R.id.bottomBar) as BottomBar
bottomBar.setDefaultTabPosition(1)
bottomBar.setOnTabSelectListener(object : OnTabSelectListener() {
@Override
fun onTabSelected(@IdRes tabId: Int) {
when (tabId) {
R.id.tab_timetable -> fragNavController!!.switchTab(TAB_FIRST)
R.id.tab_attendance -> fragNavController!!.switchTab(TAB_SECOND)
R.id.tab_subjects -> fragNavController!!.switchTab(TAB_THIRD)
}
}
})

bottomBar.setOnTabReselectListener(object : OnTabReselectListener() {
@Override
fun onTabReSelected(@IdRes tabId: Int) {
fragNavController!!.clearStack()
}
})
}

@Override
fun onCreateOptionsMenu(menu: Menu): Boolean {
getMenuInflater().inflate(R.menu.menu, menu)
return super.onCreateOptionsMenu(menu)
}

@Override
fun onBackPressed() {
if (doubleBackToExitPressedOnce) {
super.onBackPressed()
return
}
this.doubleBackToExitPressedOnce = true
Toast.makeText(this, getResources().getString(R.string.press_back), Toast.LENGTH_SHORT).show()
Handler().postDelayed(object : Runnable() {
@Override
fun run() {
doubleBackToExitPressedOnce = false
}
}, 2000)
}

@Override
fun onOptionsItemSelected(item: MenuItem): Boolean {
when (item.getItemId()) {
R.id.settings -> {
val intent = Intent(this@MainActivity, PreferencesActivity::class.java)
startActivity(intent)
return true
}
else -> return super.onOptionsItemSelected(item)
}
}
}

This file was deleted.

Loading