Skip to content

Commit 582f1d2

Browse files
committed
add one more activity
Signed-off-by: Andrey Parfenov <a1994ndrey@gmail.com>
1 parent 3f1ecc4 commit 582f1d2

21 files changed

Lines changed: 381 additions & 0 deletions

app/build.gradle

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -29,6 +29,8 @@ dependencies {
2929
implementation 'com.google.android.material:material:1.1.0'
3030
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
3131
implementation 'androidx.lifecycle:lifecycle-extensions:2.1.0'
32+
implementation 'androidx.navigation:navigation-fragment:2.3.0'
33+
implementation 'androidx.navigation:navigation-ui:2.3.0'
3234
testImplementation 'junit:junit:4.12'
3335
androidTestImplementation 'androidx.test.ext:junit:1.1.1'
3436
androidTestImplementation 'androidx.test.espresso:espresso-core:3.2.0'

app/src/main/AndroidManifest.xml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,9 @@
99
android:roundIcon="@mipmap/ic_launcher_round"
1010
android:supportsRtl="true"
1111
android:theme="@style/AppTheme">
12+
<activity
13+
android:name=".DataActivity"
14+
android:label="@string/title_activity_data"></activity>
1215
<activity
1316
android:name=".SettingsActivity"
1417
android:label="@string/app_name">
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
package com.example.brainflowplot;
2+
3+
import android.os.Bundle;
4+
5+
import com.google.android.material.bottomnavigation.BottomNavigationView;
6+
7+
import androidx.appcompat.app.AppCompatActivity;
8+
import androidx.navigation.NavController;
9+
import androidx.navigation.Navigation;
10+
import androidx.navigation.ui.AppBarConfiguration;
11+
import androidx.navigation.ui.NavigationUI;
12+
13+
public class DataActivity extends AppCompatActivity {
14+
15+
@Override
16+
protected void onCreate(Bundle savedInstanceState) {
17+
super.onCreate(savedInstanceState);
18+
setContentView(R.layout.activity_data);
19+
BottomNavigationView navView = findViewById(R.id.nav_view);
20+
// Passing each menu ID as a set of Ids because each
21+
// menu should be considered as top level destinations.
22+
AppBarConfiguration appBarConfiguration = new AppBarConfiguration.Builder(
23+
R.id.navigation_home, R.id.navigation_dashboard, R.id.navigation_notifications)
24+
.build();
25+
NavController navController = Navigation.findNavController(this, R.id.nav_host_fragment);
26+
NavigationUI.setupActionBarWithNavController(this, navController, appBarConfiguration);
27+
NavigationUI.setupWithNavController(navView, navController);
28+
}
29+
30+
}

app/src/main/java/com/example/brainflowplot/SettingsActivity.java

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
package com.example.brainflowplot;
22

33
import android.content.Context;
4+
import android.content.Intent;
45
import android.content.SharedPreferences;
56
import android.os.Bundle;
67
import android.util.Log;
@@ -40,6 +41,9 @@ protected void onCreate(Bundle savedInstanceState) {
4041
}
4142

4243
public void prepareSession(View view) {
44+
Intent myIntent = new Intent(this, DataActivity.class);
45+
startActivity(myIntent);
46+
/*
4347
// don't run it twice
4448
if (isTryingToConnect) {
4549
return;
@@ -79,6 +83,8 @@ public void prepareSession(View view) {
7983
}
8084
8185
isTryingToConnect = false;
86+
87+
*/
8288
}
8389

8490
@Override
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
package com.example.brainflowplot.ui.dashboard;
2+
3+
import android.os.Bundle;
4+
import android.view.LayoutInflater;
5+
import android.view.View;
6+
import android.view.ViewGroup;
7+
import android.widget.TextView;
8+
9+
import androidx.annotation.NonNull;
10+
import androidx.annotation.Nullable;
11+
import androidx.fragment.app.Fragment;
12+
import androidx.lifecycle.Observer;
13+
import androidx.lifecycle.ViewModelProviders;
14+
15+
import com.example.brainflowplot.R;
16+
17+
public class DashboardFragment extends Fragment {
18+
19+
private DashboardViewModel dashboardViewModel;
20+
21+
public View onCreateView(@NonNull LayoutInflater inflater,
22+
ViewGroup container, Bundle savedInstanceState) {
23+
dashboardViewModel =
24+
ViewModelProviders.of(this).get(DashboardViewModel.class);
25+
View root = inflater.inflate(R.layout.fragment_dashboard, container, false);
26+
final TextView textView = root.findViewById(R.id.text_dashboard);
27+
dashboardViewModel.getText().observe(getViewLifecycleOwner(), new Observer<String>() {
28+
@Override
29+
public void onChanged(@Nullable String s) {
30+
textView.setText(s);
31+
}
32+
});
33+
return root;
34+
}
35+
}
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
package com.example.brainflowplot.ui.dashboard;
2+
3+
import androidx.lifecycle.LiveData;
4+
import androidx.lifecycle.MutableLiveData;
5+
import androidx.lifecycle.ViewModel;
6+
7+
public class DashboardViewModel extends ViewModel {
8+
9+
private MutableLiveData<String> mText;
10+
11+
public DashboardViewModel() {
12+
mText = new MutableLiveData<>();
13+
mText.setValue("This is dashboard fragment");
14+
}
15+
16+
public LiveData<String> getText() {
17+
return mText;
18+
}
19+
}
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
package com.example.brainflowplot.ui.home;
2+
3+
import android.os.Bundle;
4+
import android.view.LayoutInflater;
5+
import android.view.View;
6+
import android.view.ViewGroup;
7+
import android.widget.TextView;
8+
9+
import androidx.annotation.NonNull;
10+
import androidx.annotation.Nullable;
11+
import androidx.fragment.app.Fragment;
12+
import androidx.lifecycle.Observer;
13+
import androidx.lifecycle.ViewModelProviders;
14+
15+
import com.example.brainflowplot.R;
16+
17+
public class HomeFragment extends Fragment {
18+
19+
private HomeViewModel homeViewModel;
20+
21+
public View onCreateView(@NonNull LayoutInflater inflater,
22+
ViewGroup container, Bundle savedInstanceState) {
23+
homeViewModel =
24+
ViewModelProviders.of(this).get(HomeViewModel.class);
25+
View root = inflater.inflate(R.layout.fragment_home, container, false);
26+
final TextView textView = root.findViewById(R.id.text_home);
27+
homeViewModel.getText().observe(getViewLifecycleOwner(), new Observer<String>() {
28+
@Override
29+
public void onChanged(@Nullable String s) {
30+
textView.setText(s);
31+
}
32+
});
33+
return root;
34+
}
35+
}
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
package com.example.brainflowplot.ui.home;
2+
3+
import androidx.lifecycle.LiveData;
4+
import androidx.lifecycle.MutableLiveData;
5+
import androidx.lifecycle.ViewModel;
6+
7+
public class HomeViewModel extends ViewModel {
8+
9+
private MutableLiveData<String> mText;
10+
11+
public HomeViewModel() {
12+
mText = new MutableLiveData<>();
13+
mText.setValue("This is home fragment");
14+
}
15+
16+
public LiveData<String> getText() {
17+
return mText;
18+
}
19+
}
Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
package com.example.brainflowplot.ui.notifications;
2+
3+
import android.os.Bundle;
4+
import android.view.LayoutInflater;
5+
import android.view.View;
6+
import android.view.ViewGroup;
7+
import android.widget.TextView;
8+
9+
import androidx.annotation.NonNull;
10+
import androidx.annotation.Nullable;
11+
import androidx.fragment.app.Fragment;
12+
import androidx.lifecycle.Observer;
13+
import androidx.lifecycle.ViewModelProviders;
14+
15+
import com.example.brainflowplot.R;
16+
17+
public class NotificationsFragment extends Fragment {
18+
19+
private NotificationsViewModel notificationsViewModel;
20+
21+
public View onCreateView(@NonNull LayoutInflater inflater,
22+
ViewGroup container, Bundle savedInstanceState) {
23+
notificationsViewModel =
24+
ViewModelProviders.of(this).get(NotificationsViewModel.class);
25+
View root = inflater.inflate(R.layout.fragment_notifications, container, false);
26+
final TextView textView = root.findViewById(R.id.text_notifications);
27+
notificationsViewModel.getText().observe(getViewLifecycleOwner(), new Observer<String>() {
28+
@Override
29+
public void onChanged(@Nullable String s) {
30+
textView.setText(s);
31+
}
32+
});
33+
return root;
34+
}
35+
}
Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
package com.example.brainflowplot.ui.notifications;
2+
3+
import androidx.lifecycle.LiveData;
4+
import androidx.lifecycle.MutableLiveData;
5+
import androidx.lifecycle.ViewModel;
6+
7+
public class NotificationsViewModel extends ViewModel {
8+
9+
private MutableLiveData<String> mText;
10+
11+
public NotificationsViewModel() {
12+
mText = new MutableLiveData<>();
13+
mText.setValue("This is notifications fragment");
14+
}
15+
16+
public LiveData<String> getText() {
17+
return mText;
18+
}
19+
}

0 commit comments

Comments
 (0)