Professional Documents
Culture Documents
N01346254 Inderjit Singh Opening The App
N01346254 Inderjit Singh Opening The App
N01346254 Inderjit Singh Opening The App
import androidx.annotation.NonNull;
import androidx.appcompat.app.AppCompatActivity;
import androidx.core.app.ActivityCompat;
import androidx.core.content.ContextCompat;
import android.Manifest;
import android.app.DatePickerDialog;
import android.app.TimePickerDialog;
import android.content.ActivityNotFoundException;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.provider.CalendarContract;
import android.provider.MediaStore;
import android.provider.Settings;
import android.text.InputType;
import android.view.View;
import android.widget.CheckBox;
import android.widget.DatePicker;
import android.widget.EditText;
import android.widget.ImageView;
import android.widget.Switch;
import android.widget.TextView;
import android.widget.TimePicker;
import android.widget.Toast;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;
TextView event_startDate,event_endDate;
ImageView myImage;
Calendar calender1,calender2;
boolean all_day_myEvent;
DatePickerDialog.OnDateSetListener myDateListener;
Switch mySwitch;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
event_startDate=(TextView)findViewById(R.id.event_start_date);
event_endDate =(TextView)findViewById(R.id.event_end_date);
event_startDate.setInputType(InputType.TYPE_NULL);
event_endDate.setInputType(InputType.TYPE_NULL);
myImage = (ImageView) findViewById(R.id.img_view_photo);
myEvent_invitions = (EditText) findViewById(R.id.event_recipients);
event_startDate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
event_startDate.setText(simpleDateFormat.format(calender1.getTime()));
}
};
new TimePickerDialog(MainActivity.this,timeListener,
calender1.get(Calendar.HOUR_OF_DAY), calender1.get(Calendar.MINUTE),false).show();
}
};
new
DatePickerDialog(MainActivity.this,dateListener,year,month,day).show();
}
});
event_endDate.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
calender2 = Calendar.getInstance();
int year = calender2.get(Calendar.YEAR);
int month = calender2.get(Calendar.MONTH);
int day = calender2.get(Calendar.DAY_OF_MONTH);
event_endDate.setText(simpleDateFormat.format(calender2.getTime()));
}
};
new TimePickerDialog(MainActivity.this,timeListener,
calender2.get(Calendar.HOUR_OF_DAY), calender2.get(Calendar.MINUTE),false).show();
}
};
new
DatePickerDialog(MainActivity.this,dataListener,year,month,day).show();
}
});
}
if(!myEventTitle.isEmpty()&& !myEventDescription.isEmpty()
&& !myInvitees.isEmpty() && !eventStartDate.isEmpty()
&& !eventEndDate.isEmpty() ) {
addEvent(myEventTitle,myEventDescription,myInvitees,timeStart,timeEnd,
all_day_myEvent);
}
}else
{
Toast.makeText(this, "All of the details are necessary",
Toast.LENGTH_SHORT).show();
}
}
switch(view.getId()) {
case R.id.checkbox_whole_day_event:
if (isChecked)
{
all_day_myEvent = true;
}
else
all_day_myEvent = false;
break;
}
}
permissionForCameraAccess();
}
private void permissionForCameraAccess() {
if(ContextCompat.checkSelfPermission(this, Manifest.permission.CAMERA) !=
PackageManager.PERMISSION_GRANTED)
{
ActivityCompat.requestPermissions(this,new String[]
{Manifest.permission.CAMERA}, 101);
}else
{
startCapturing();
}
}
try {
startActivityForResult(intent, 1);
} catch (ActivityNotFoundException e) {
//some error message
}
}
public void addEvent(String title, String description, String invitees,long
begin, long end,boolean all_day_event) {
if (mySwitch.isChecked()) {
myEventIntent.putExtra(CalendarContract.Events.ACCESS_LEVEL,
CalendarContract.Events.ACCESS_PUBLIC);
} else {
myEventIntent.putExtra(CalendarContract.Events.ACCESS_LEVEL,
CalendarContract.Events.ACCESS_PRIVATE);
@Override
public void onRequestPermissionsResult(int requestCode, @NonNull String[]
permissions, @NonNull int[] grantResults) {
if(requestCode == 101)
{
if(grantResults.length>0 &&
grantResults[0]==PackageManager.PERMISSION_GRANTED)
{
startCapturing();
}else
{
Toast.makeText(this,"No camera Permission
",Toast.LENGTH_SHORT).show();
}
}
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == 1 && resultCode == RESULT_OK) {
Bundle dataExtras = data.getExtras();
Bitmap bitmap = (Bitmap) dataExtras.get("data");
myImage.setImageBitmap(bitmap);
}
}
mySettings();
}
MainActivity.xml
<?xml version="1.0" encoding="utf-8"?>
<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_height="match_parent"
android:layout_width="match_parent"
android:outlineAmbientShadowColor="#e4ecbf">
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity"
android:background="#f3f9dc"
>
<EditText
android:id="@+id/myCalender_title"
android:layout_width="150dp"
android:layout_height="wrap_content"
android:layout_marginTop="10dp"
android:hint="Title of Event"
android:paddingStart="12dp"
android:gravity="center"
android:maxLines="1"
android:paddingEnd="12dp"
android:background="@drawable/custom_input"
android:shadowColor="#c6d97f"
android:textSize="20dp"
android:textColor="#373f1a"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />
<TextView
android:id="@+id/event_start_date"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:hint="Start Date"
android:layout_marginTop="20dp"
android:textSize="13dp"
android:textColor="#373f1a"
android:layout_marginLeft="30dp"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintTop_toBottomOf="@id/myCalender_title" />
<TextView
android:id="@+id/event_end_date"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginTop="20dp"
android:textSize="13dp"
android:hint="End Date"
android:textColor="#373f1a"
android:layout_marginRight="30dp"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@id/myCalender_title" />
<TextView
android:id="@+id/public_private_view"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Private Event?"
android:textColor="#373f1a"
android:layout_marginTop="20dp"
android:textSize="20dp"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toLeftOf="@id/visibility"
app:layout_constraintTop_toBottomOf="@id/event_end_date"/>
<Switch
android:id="@+id/visibility"
android:layout_marginTop="20dp"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textOn="public"
android:textOff="private"
app:showText="true"
app:layout_constraintLeft_toRightOf="@id/public_private_view"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@id/event_end_date" />
/>
<EditText
android:id="@+id/calender_event_description"
android:layout_width="300dp"
android:layout_height="25dp"
android:hint="Event Description"
android:gravity="center"
android:paddingStart="12dp"
android:textColor="#373f1a"
android:paddingEnd="12dp"
android:background="@drawable/custom_input"
android:shadowColor="#e4ecbf"
android:layout_marginTop="20dp"
android:textSize="20dp"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@id/public_private_view" />
<EditText
android:id="@+id/event_recipients"
android:layout_width="250dp"
android:layout_height="wrap_content"
android:gravity="center"
android:hint="Event Recepients"
android:paddingStart="12dp"
android:paddingEnd="12dp"
android:layout_marginTop="20dp"
android:background="@drawable/custom_input"
android:shadowColor="#e4ecbf"
android:textSize="20dp"
android:textColor="#373f1a"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@id/calender_event_description" />
<CheckBox android:id="@+id/checkbox_whole_day_event"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Check if All Day Event"
android:layout_marginTop="30dp"
android:textSize="20dp"
android:textColor="#373f1a"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
android:onClick="onClickCheckBox"
app:layout_constraintTop_toBottomOf="@id/event_recipients"/>
<Button
android:id="@+id/btn_add_event"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:onClick="onClickAddEvent"
android:layout_marginTop="20dp"
android:padding="10dp"
android:text="Add Event"
android:textColor="#FFFFFF"
android:textSize="17dp"
android:background="@drawable/custom_button"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@id/checkbox_whole_day_event" />
<TextView
android:id="@+id/line_separater1"
android:layout_width="match_parent"
android:layout_height="2dp"
android:layout_marginTop="10dp"
android:background="#000000"
android:layout_marginBottom="10dp"
app:layout_constraintTop_toBottomOf="@id/btn_add_event"
/>
<Button
android:id="@+id/btn_capture_image"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Capture Image"
android:padding="10dp"
android:onClick="onClickAddImage"
android:textColor="#FFFFFF"
android:textSize="17dp"
android:background="@drawable/custom_button"
android:layout_marginTop="20dp"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@id/line_separater1" />
<ImageView
android:id="@+id/img_view_photo"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_launcher_background"
app:layout_constraintLeft_toLeftOf="parent"
android:layout_marginTop="20dp"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@id/btn_capture_image"/>
<TextView
android:id="@+id/line_separater2"
android:layout_width="match_parent"
android:layout_height="2dp"
android:layout_marginTop="10dp"
android:background="#000000"
android:layout_marginBottom="10dp"
app:layout_constraintTop_toBottomOf="@id/img_view_photo"
/>
<TextView
android:id="@+id/TV_mysettings"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Click on my settings :"
app:layout_constraintLeft_toLeftOf="parent"
android:textSize="17dp"
android:layout_marginTop="20dp"
android:textColor="#373f1a"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@id/line_separater2"/>
<Button
android:id="@+id/btn_settings"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="My Setting"
android:padding="10dp"
android:layout_marginTop="20dp"
android:textColor="#FFFFFF"
android:textSize="17dp"
android:background="@drawable/custom_button"
android:onClick="onClickMySetting"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toBottomOf="@id/TV_mysettings"
/>
</androidx.constraintlayout.widget.ConstraintLayout>
</ScrollView>
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.inderjit.intentactivity">
<uses-permission android:name="android.permission.CAMERA"/>
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<action android:name="android.media.action.IMAGE_CAPTURE" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
Drawables:
Button:
<?xml version="1.0" encoding="utf-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android"
android:shape="rectangle">
<solid android:color="#bdc586" />
<corners android:radius="10dp"/>
</shape>
Text Field:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_enabled="true" android:state_focused="true">
<shape android:shape="rectangle"><solid android:color="@android:color/white"/>
<corners android:radius="10dp"/>
</shape>
</item>
<item android:state_enabled="true">
<shape android:shape="rectangle"><solid
android:color="@android:color/white"/>
<corners android:radius="10dp"/>
<stroke android:color="@android:color/darker_gray" android:width="1dp"/>
</shape>
</item>
</selector>