Change Upload way

- Add FloatingActionButton for Upload
- Delete Upload Tab
This commit is contained in:
lionel
2021-01-12 12:26:07 +01:00
parent 5c42862398
commit 86ab1ff32f
5 changed files with 62 additions and 128 deletions

View File

@ -1,6 +1,7 @@
package com.localtransfer;
import android.Manifest;
import android.app.Activity;
import android.content.ActivityNotFoundException;
import android.content.Intent;
import android.content.SharedPreferences;
@ -31,6 +32,8 @@ import java.util.ArrayList;
public class MainActivity extends AppCompatActivity {
public static final int REQUEST_ID_CHOOSE_FILES = 2002;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
@ -42,6 +45,19 @@ public class MainActivity extends AppCompatActivity {
viewPager.setAdapter(sectionsPagerAdapter);
TabLayout tabs = findViewById(R.id.tabs);
tabs.setupWithViewPager(viewPager);
FloatingActionButton fab = findViewById(R.id.flotUpload);
fab.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Intent intent = new Intent()
.setType("*/*")
.setAction(Intent.ACTION_GET_CONTENT)
.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true);
startActivityForResult(Intent.createChooser(intent, "Select a file"), REQUEST_ID_CHOOSE_FILES);
}
});
checkAndRequestPermissions();
@ -84,6 +100,42 @@ public class MainActivity extends AppCompatActivity {
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
Log.d("RequestCode", String.valueOf(requestCode));
if (requestCode == REQUEST_ID_CHOOSE_FILES && resultCode == Activity.RESULT_OK) {
String type = data.getType();
ViewPager viewPager = this.findViewById(R.id.view_pager);
viewPager.setCurrentItem(2);
Transfer tr = new Transfer();
if (type != null) {
String sharedText = data.getStringExtra(Intent.EXTRA_TEXT);
tr.handleSendText(sharedText);
}
else {
ArrayList<Uri> fileUris = new ArrayList<>();
if (data.getClipData() != null) { // Checking for selection multiple files
int nbItem = data.getClipData().getItemCount();
Toast.makeText(this, "You select " + nbItem + " files", Toast.LENGTH_SHORT).show();
for (int i = 0; i < nbItem; i++) {
Uri uri = data.getClipData().getItemAt(i).getUri();
fileUris.add(uri);
}
} else {
Uri uri = data.getData(); //The uri with the location of the file
fileUris.add(uri);
}
for (Uri uri : fileUris) {
tr.handleSendFile(uri);
}
}
}
}
@Override
public void onResume(){
super.onResume();