Unreal Engine oder doch eher Blender?

Nun ich fange mal so an,

ich habe mich dazu entschlossen eine App zu programmieren die allerdings nicht einem Spiel oder anderem ähnelt, sondern eine App welche mit einem anderem, auch von mir entwickeltem, Produkt kommunizieren soll, sei es über Bluetooth oder über WLAN. Nun habe ich mir überlegt, dass die Oberfläche der App so gestalten werden soll, das es nicht wie jede anderen herkömmliche App aussieht, sondern zum Teil 3D Design und mit 3D Animationen. Ich möchte erst einmal mit Android Arbeiten, IOS steht fürs erste Außen vor. Mein Gedankengang war so das ich beispielsweise ein kleines Modell in 3D designe und diesen in der App betrachten kann und entsprechende Funktionen aktivieren kann. Dabei ist mir in den Sinn gekommen das Modell in Blender zu designen und später bei Android Studio mit einzubauen und damit zu arbeiten. Dabei ist zu beachten das hierbei sehr Hardware nah programmiert wird, weshalb ich C/C++ nutzen werden. Android Studio unterstützt diese Sprache, Blender auch. Nun habe ich nach gelesen das Unreal Engine auch mit C/C++ klarkommt. Der Unterschied ist allerdings das Blender ein Modellierungsprogramm ist und Unreal Engine eine Game-Engine. Nun stehe ich so bisschen auf dem Schlauch. Was würdet ihr denn so Empfehlen b.z.w raten? Eventuell liege ich ja ganz falsch und es gibt andere Methoden meinen Wunsch zu ermöglichen. Freue mich schon auf eure Antworten!

Computer, Technik, Blender, 3D Modelling, Blender 3D, Technologie, blender-game-engine, Unreal Engine, app entwicklung, Android Studio, Unreal Engine 4
Flutter-Future<List> als List zurück geben?

Heeeeey Leute,

Ich rufe eine Liste aus der Datenbank ab und will daraus eine Liste auf der App visualisieren.

Aber in einer async Funktion kann ich keine liste zurück geben.
Wie bekomme ich die Liste jetzt in meinen build.

Code sieht so aus

  void missionEntries()async{
    final Future<List>mission=DBManagement().getAll();
    List missions=await mission.then((value) => null);
  }

  @override
  Widget build(BuildContext context) {
    missionEntries();
    return Expanded(
      child: Container(
        child: ListView.builder(
          itemCount: missions.length,
          itemBuilder: (context, index) {
            return GestureDetector(
              onLongPress: ()=>print("Eintrag bearbeiten!"),
              onTap: ()=>print("Eintrag einsehen!"),
              child: Card(
                child: Row(
                  children: <Widget>[
                    Expanded(
                      child: Text(
                        missions[index]["num"],
                        textAlign: TextAlign.center,
                      ),
                    ),
                    Expanded(
                      child: Text(missions[index]["location"]),
                    ),
                    Expanded(
                      child: Text(missions[index]["date"].toString()),
                    ),
                    Expanded(
                      child: Text(missions[index]["time"].toString()),
                    ),
                    Expanded(
                      child: IconButton(
                        icon: Icon(Icons.delete),
                        onPressed: ()=>print("löschen")
                      )
                    ),
                  ],
                ),
              ),
            );
          }
        ),
      ),
    );
  }

und missionEntries(); müsste eigentlich zu

List missions=missionEntries() werden weil ich die missions liste

ein paar zeilen weiter im ListView.builder brauche.

Hoffe Ihr könnt mir helfen.

programmieren, Scripten, Visual Studio, Flutter, Android Studio
Wie bekomme ich Daten aus einer bestimmten Zeile (Sqlite, Android Studio?

(Ich bin noch relativ neu in Android Studio, bzw. Programmieren generell, aber learning by doing und so) Ich will die Daten die ich zuvor in die Datenbank gespeichert habe, auslesen und als Beschriftung eines Buttons einfügen. Da ich keine Zeilen hinzufügen oder löschen will, werden bei erstellen der Tabelle gleich alle Zeilen mit erstellt, so dass ich deren IDs habe. Nun ich hab ich versucht eine Lösung zu finden, jedoch crasht die App wenn ich mein Herumgemurckse ausführe (was wahrscheinlich nicht verwunderlich ist ^^' ) Der Name der Datenbank usw.:

    public static final String DATABASE_NAME = "stundenplan.db";
    public static final String TABLE_NAME = "faecher";
    public static final String COL_1 = "ID";
    public static final String COL_2 = "fach";
    public static final String COL_3 = "farbe";

Die getData() Methode aus der DatabaseHelper Class:

public Cursor getData(){
        SQLiteDatabase sqLiteDatabase = this.getWritableDatabase();
        Cursor res = sqLiteDatabase.rawQuery("SELECT * FROM " + COL_2 + " WHERE "  + COL_1 + " = 1", null);
        return res;
    }

Die onClick() Methode aus der (Tabbed) Activity:

btn_ok.setOnClickListener(new View.OnClickListener() {
                @Override
                public void onClick(View view) {
                    Cursor res = myDB.getData();
                    btn_mo1 = view.findViewById(R.id.btn_mo1);
                    btn_mo1.setText(res.getString(1));
                }
            });

Ich bekomme übrigens keinen Fehlercode oder so.

Computer, Technik, programmieren, Java, Android, Technologie, SQLite, Android Studio, Spiele und Gaming
jetpack compose - wie starte ich eine neue Activity?

Hallo zusammen

Ich habe folgendes Composable in meinem Code:

@Composable
fun Toolbar() {

    // Create a boolean variable
    // to store the display menu state
    var mDisplayMenu by remember { mutableStateOf(false) }

    // fetching local context
    val mContext = LocalContext.current

    // Creating a Top bar
    TopAppBar(
        title = { Text(stringResource(R.string.app_name)) },backgroundColor = Color(0xFFFFFFFF),
                actions = {

                    // would create a Toast message
                    IconButton(onClick = {
                        val intent = Intent(this, LockScreenActivity::class.java)
                        startActivity(intent)
                        Toast.makeText(mContext, "Lock app...", Toast.LENGTH_SHORT).show() }) {
                        Icon(Icons.Outlined.Lock, "")

Nun möchte ich gerne, dass wenn man auf das lock icon klickt, die dazugehörige Activity "LockScreenActivity" gestartet wird. Folgende Fehlermeldung erhalte ich jedoch bei "val intent = Intent"

None of the following functions can be called with the arguments supplied.
<init>(Context!, Class<*>!) defined in android.content.Intent
<init>(String!, Uri!) defined in android.content.Intent

Ich weiss nicht genau, warum diese Fehlermeldung auftritt bzw. warum es nun noch ein Argument benötigt. Könnte mir bitte Jemand helfen?

Eine Zeile weiter unten bestätigt sich nochmals mein Fehler mit der Meldung No value passed for parameter 'intent'

No value passed for parameter 'intent'

Vielen Dank für jede Hilfe.

programmieren, Android, Code, compose, Android Studio, Kotlin
Android Studio App stürzt ab nach klick auf Button?

Hallo,

ich habe eine Android Studio Applikation mit einer Bottom Navigation bar, bei welcher unter dem Reiter "Profile" ein User hinzugefügt werden soll. Wenn ich dort auf "Add User" klick stürzt die App allerdings ab, in der Version ohne Navigationsbar funktioniert das allerdings einwand frei. Vielleicht kann mir jedmand helfen, den Fehler zu finden.

Hier ist die UI von Profile:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout ...
    ...
    <Button
        android:id="@+id/btAddUser"
        ...
        android:text="Add User"
        android:onClick="onAddUser"
        />

</LinearLayout>

Hier die UI der BottomBar:

<?xml version="1.0" encoding="utf-8"?>
<...
    <FrameLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:id="@+id/fragment_container"
        >  
...
 app:menu="@menu/bottom_navigation"/>
    </FrameLayout>

Die Klasse zur BottomBar:

package com.example.bottomnav;
import ...
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);

BottomNavigationView bottomNavigation = findViewById(R.id.bottom_navigation);    bottomNavigation.setOnNavigationItemSelectedListener(navListener);
getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container,
...
private BottomNavigationView.OnNavigationItemSelectedListener navListener =
new BottomNavigationView.OnNavigationItemSelectedListener() {
@Override
public boolean onNavigationItemSelected(@NonNull @NotNull MenuItem item) {
Fragment selectedFragment = null;
switch (item.getItemId())
{
case R.id.nav_projects:
selectedFragment = new ...
ProfileFragment();
break;
}
                    getSupportFragmentManager().beginTransaction().replace(R.id.fragment_container,
selectedFragment).commit();
return true;
}};}

Hier der Code zum Profil hinzufügen:

@Nullable
@org.jetbrains.annotations.Nullable
@Override
public View onCreateView(LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
    return inflater.inflate(R.layout.fragment_profile, container, false);
}

public
class MyActivity extends AppCompatActivity {
    ...

    Button btAddUser;
...

    Boolean isAdmin = Boolean.FALSE;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.fragment_profile);
       ...
        btAddUser = findViewById(R.id.btAddUser);

        btAddUser.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {onAddUser(btAddUser);}

    public void onAddUser(View view) {
...

Computer, Java, Android, Informatik, XML, Progamm, Android Studio