Parsi Coders
اموزش برنامه نویسی اندروید به همراه تمامی ابزارها - نسخه قابل چاپ

+- Parsi Coders (http://parsicoders.com)
+-- انجمن: Mobile (http://parsicoders.com/forumdisplay.php?fid=56)
+--- انجمن: Basic4Android (http://parsicoders.com/forumdisplay.php?fid=112)
+--- موضوع: اموزش برنامه نویسی اندروید به همراه تمامی ابزارها (/showthread.php?tid=1439)



RE: اموزش برنامه نویسی اندروید به همراه تمامی ابزارها - haji110 - 10-10-2013

این مشکل برای چند کتابخونه دیگه هم پیش اومده.البته اسم اونا فرق میکنه.
یعنی اونا هم همینطورن؟


RE: اموزش برنامه نویسی اندروید به همراه تمامی ابزارها - wikiccu - 10-11-2013

کد پی‌اچ‌پی:
Sub Process_Globals
    Dim tmrAnimation 
As Timer
    Dim currentPanelBeforePaused 
As Int
End Sub

Sub Globals
    Dim sd 
As SlidingData 'The object that holds the data for SlidingPanels
    Dim btnLeft, btnRight As Button
    Dim startX, startY As Float
    Dim SlidingDuration As Int
    SlidingDuration = 500
End Sub

Sub Activity_Create(FirstTime As Boolean)
    '
Create the panels.
    
'In this example we are just creating 8 "dummy" panels with different colors.
    '
You can instead load a different layout to each panel.
    
Dim panels(3) As Panel
    
For 0 To panels.Length 1
        panels
(i).Initialize("panels")
        
panels(i).Color Colors.RGB(Rnd(0255), Rnd(0255), Rnd(0255))
        
Dim lbl As Label
        lbl
.Initialize("")
        
lbl.Text "I'm Panel: " i
        lbl
.TextSize 20
        lbl
.TextColor Colors.White
        panels
(i).AddView(lbl20%x40%y60%x30dip)
        
Activity.AddView(panels(i), 100%x0100%x100%60dip'add the panel to the layout
        Activity.AddMenuItem("Panel #" & i, "Menu")
    Next
    '
add the Left and Right button
    btnLeft
.Initialize("Left")
    
btnLeft.Text "Left"
    
Activity.AddView(btnLeft10%x100%55dip100dip50dip)
    
btnRight.Initialize("Right")
    
btnRight.Text "Right"
    
Activity.AddView(btnRight60%x100%55dip100dip50dip)
    
    
'*****************************
    '
Initialize the SlidingData object and set the array of panels.
    
'Then we call SlidingPanels.Initialize to prepare the animation objects.
    '
The last call to ChangePanel brings the first panel.
    
sd.Initialize
    sd
.panels panels
    SlidingPanels
.Initialize(sdSlidingDuration)
    
sd.targetPanel = -1
    sd
.currentPanel currentPanelBeforePaused 1
    ChangePanel
(True'Current code expects the first call to be with Left = True.

End Sub
Sub Menu_Click
Log("menu_click")
    Dim menu As String
    menu = Sender
    btnLeft.Enabled = False
    btnRight.Enabled = False
    JumpToPanel(menu.SubString("Panel #".Length))
End Sub

Sub Left_Click
    ChangePanel(True)
End Sub

Sub Right_Click
    ChangePanel(False)
End Sub
'
**** These two subs are requred for handling the sliding ***
Sub ChangePanel(Left As Boolean)
    
'disable the buttons during the animation
    btnLeft.Enabled = False
    btnRight.Enabled = False
    '
Call SlidingPanels.ChangePanel to actually change the panels.
    
SlidingPanels.ChangePanel(sdLeft)
End Sub
Sub Animation1_AnimationEnd
    
'This event is raised when the animation finishes. You should call SlidingPanels.AnimationEnd from this sub.
    SlidingPanels.AnimationEnd(sd)
    If sd.targetPanel >= 0 Then 
        tmrAnimation.Enabled = True
        Return '
we are still animating...
    
End If
    
'Enable the Left and Right buttons (unless there are no more panels).
    '
If sd.currentPanel sd.panels.Length 1 Then btnLeft.Enabled False Else btnLeft.Enabled True
    
'If sd.currentPanel = 0 Then btnRight.Enabled = False Else btnRight.Enabled = True
    btnLeft.Enabled = True
    btnRight.Enabled = True
End Sub
Sub tmrAnimation_Tick
    tmrAnimation.Enabled = False
    ContinueJumping
End Sub
'
JumpToPanel can be used to navigate to a different panel which is not adjacent to the current one.
Sub JumpToPanel (Target As Int)
    
sd.targetPanel Target
    
For 0 To 1
        sd
.leftAnimations(i).Duration SlidingDuration 2
        sd
.rightAnimations(i).Duration SlidingDuration 2
    Next
    ContinueJumping
End Sub
Sub ContinueJumping
    
If sd.targetPanel OR sd.targetPanel sd.currentPanel Then 
        sd
.targetPanel = -1
        Animation1_AnimationEnd
        
For 0 To 1
            sd
.leftAnimations(i).Duration SlidingDuration
            sd
.rightAnimations(i).Duration SlidingDuration
        Next
        
Return
    
End If
    
SlidingPanels.ChangePanel(sdsd.targetPanel sd.currentPanel)
End Sub
Sub Panels_Touch 
(Action As IntAs FloatAs Float)
    
Select Action
        
Case Activity.ACTION_DOWN
            startX 
X
            startY 
Y
        
Case Activity.ACTION_UP
            
If Abs(startY) > 20%y Then Return
            If 
startX 30%AND btnRight.Enabled True Then 
                ChangePanel
(False)
            Else If 
startX 30%AND btnLeft.Enabled True Then
                ChangePanel
(True)
            
End If
    
End Select
End Sub

Sub Activity_Resume

End Sub

Sub Activity_Pause 
(UserClosed As Boolean)
    If 
UserClosed False Then
        currentPanelBeforePaused 
sd.currentPanel
    
Else 
        
currentPanelBeforePaused 0
    End 
If
End Sub 
درود بیکران بر مهندسان
میخواستم ببینم میشه به جای کد نویسی توی این کد از Designer استفاده کرد ؟
واضح تر بگم مبشه به جای لود کردن پنل توی دیزانر این کارو بکنم و به کد آسیبی نرسه و درست اجرا بشه؟
اگه آره چطوری؟

 


RE: اموزش برنامه نویسی اندروید به همراه تمامی ابزارها - haji110 - 10-11-2013

وقتی دیباگ و ران میزنم خروجی نمیبینم.
راستی فایل APK تولید نمیشه که حداقل تو موبایل اجراش کنم.
   

 

 


RE: اموزش برنامه نویسی اندروید به همراه تمامی ابزارها - wikiccu - 10-11-2013

(10-05-2012، 05:00 PM)'fadas133' نوشته: تو b4a نمیشه متن ها رو راست چین کرد ؟
مثلا textbox ها رو از راست پر میکنه
چه کار کنیم ؟؟؟
البته منظورم listview چه جوری گزینه هاشو راست چین کنیم ؟

 

این یه سمپل برای label هست رو بقیه آبجکت ها هم جواب میده 


کد:
lbl.Gravity=Bit.OR(Gravity.CENTER, Gravity.CENTER_HORIZONTAL)



 


RE: اموزش برنامه نویسی اندروید به همراه تمامی ابزارها - seyedsharifi - 10-12-2013

با سلام
چطوری میتونم وقتی گوشی زنگ خورد دتکت کنم وشماره تلفن تماس گیرنده را بدست آورم
لطفا راهنمایی کنید
 


RE: اموزش برنامه نویسی اندروید به همراه تمامی ابزارها - seyedsharifi - 10-15-2013

(10-12-2013، 01:05 PM)'seyedsharifi' نوشته: با درود
چطوری میتونم وقتی گوشی زنگ خورد دتکت کنم وشماره تلفن تماس گیرنده را بدست آورم
لطفا راهنمایی کنید
 

 


مثل اینکه دیگه اینجا کسی سر نمیزنه و سوت و کوره و کسی نیست به سوالهای ما پاسخ دهد
 


RE: اموزش برنامه نویسی اندروید به همراه تمامی ابزارها - Amin_Mansouri - 10-15-2013

(10-11-2013، 09:47 AM)'haji110' نوشته: وقتی دیباگ و ران میزنم خروجی نمیبینم.
راستی فایل APK تولید نمیشه که حداقل تو موبایل اجراش کنم.


 

 

 


سلام
یکی از کتبخانه های فایلت باید کم باشه
سعی کنید وقتی مقدماتی کار میکنید برید سراغ پروزه های کوچیک
از پروژه های اماده استفاده نکنید که سر در گم نشید
 


RE: اموزش برنامه نویسی اندروید به همراه تمامی ابزارها - Amin_Mansouri - 10-15-2013

(10-11-2013، 01:46 AM)'wikiccu' نوشته:
کد پی‌اچ‌پی:
Sub Process_Globals
    Dim tmrAnimation 
As Timer
    Dim currentPanelBeforePaused 
As Int
End Sub

Sub Globals
    Dim sd 
As SlidingData 'The object that holds the data for SlidingPanels
    Dim btnLeft, btnRight As Button
    Dim startX, startY As Float
    Dim SlidingDuration As Int
    SlidingDuration = 500
End Sub

Sub Activity_Create(FirstTime As Boolean)
    '
Create the panels.
    
'In this example we are just creating 8 "dummy" panels with different colors.
    '
You can instead load a different layout to each panel.
    
Dim panels(3) As Panel
    
For 0 To panels.Length 1
        panels
(i).Initialize("panels")
        
panels(i).Color Colors.RGB(Rnd(0255), Rnd(0255), Rnd(0255))
        
Dim lbl As Label
        lbl
.Initialize("")
        
lbl.Text "I'm Panel: " i
        lbl
.TextSize 20
        lbl
.TextColor Colors.White
        panels
(i).AddView(lbl20%x40%y60%x30dip)
        
Activity.AddView(panels(i), 100%x0100%x100%60dip'add the panel to the layout
        Activity.AddMenuItem("Panel #" & i, "Menu")
    Next
    '
add the Left and Right button
    btnLeft
.Initialize("Left")
    
btnLeft.Text "Left"
    
Activity.AddView(btnLeft10%x100%55dip100dip50dip)
    
btnRight.Initialize("Right")
    
btnRight.Text "Right"
    
Activity.AddView(btnRight60%x100%55dip100dip50dip)
    
    
'*****************************
    '
Initialize the SlidingData object and set the array of panels.
    
'Then we call SlidingPanels.Initialize to prepare the animation objects.
    '
The last call to ChangePanel brings the first panel.
    
sd.Initialize
    sd
.panels panels
    SlidingPanels
.Initialize(sdSlidingDuration)
    
sd.targetPanel = -1
    sd
.currentPanel currentPanelBeforePaused 1
    ChangePanel
(True'Current code expects the first call to be with Left = True.

End Sub
Sub Menu_Click
Log("menu_click")
    Dim menu As String
    menu = Sender
    btnLeft.Enabled = False
    btnRight.Enabled = False
    JumpToPanel(menu.SubString("Panel #".Length))
End Sub

Sub Left_Click
    ChangePanel(True)
End Sub

Sub Right_Click
    ChangePanel(False)
End Sub
'
**** These two subs are requred for handling the sliding ***
Sub ChangePanel(Left As Boolean)
    
'disable the buttons during the animation
    btnLeft.Enabled = False
    btnRight.Enabled = False
    '
Call SlidingPanels.ChangePanel to actually change the panels.
    
SlidingPanels.ChangePanel(sdLeft)
End Sub
Sub Animation1_AnimationEnd
    
'This event is raised when the animation finishes. You should call SlidingPanels.AnimationEnd from this sub.
    SlidingPanels.AnimationEnd(sd)
    If sd.targetPanel >= 0 Then 
        tmrAnimation.Enabled = True
        Return '
we are still animating...
    
End If
    
'Enable the Left and Right buttons (unless there are no more panels).
    '
If sd.currentPanel sd.panels.Length 1 Then btnLeft.Enabled False Else btnLeft.Enabled True
    
'If sd.currentPanel = 0 Then btnRight.Enabled = False Else btnRight.Enabled = True
    btnLeft.Enabled = True
    btnRight.Enabled = True
End Sub
Sub tmrAnimation_Tick
    tmrAnimation.Enabled = False
    ContinueJumping
End Sub
'
JumpToPanel can be used to navigate to a different panel which is not adjacent to the current one.
Sub JumpToPanel (Target As Int)
    
sd.targetPanel Target
    
For 0 To 1
        sd
.leftAnimations(i).Duration SlidingDuration 2
        sd
.rightAnimations(i).Duration SlidingDuration 2
    Next
    ContinueJumping
End Sub
Sub ContinueJumping
    
If sd.targetPanel OR sd.targetPanel sd.currentPanel Then 
        sd
.targetPanel = -1
        Animation1_AnimationEnd
        
For 0 To 1
            sd
.leftAnimations(i).Duration SlidingDuration
            sd
.rightAnimations(i).Duration SlidingDuration
        Next
        
Return
    
End If
    
SlidingPanels.ChangePanel(sdsd.targetPanel sd.currentPanel)
End Sub
Sub Panels_Touch 
(Action As IntAs FloatAs Float)
    
Select Action
        
Case Activity.ACTION_DOWN
            startX 
X
            startY 
Y
        
Case Activity.ACTION_UP
            
If Abs(startY) > 20%y Then Return
            If 
startX 30%AND btnRight.Enabled True Then 
                ChangePanel
(False)
            Else If 
startX 30%AND btnLeft.Enabled True Then
                ChangePanel
(True)
            
End If
    
End Select
End Sub

Sub Activity_Resume

End Sub

Sub Activity_Pause 
(UserClosed As Boolean)
    If 
UserClosed False Then
        currentPanelBeforePaused 
sd.currentPanel
    
Else 
        
currentPanelBeforePaused 0
    End 
If
End Sub 
درود بیکران بر مهندسان
میخواستم ببینم میشه به جای کد نویسی توی این کد از Designer استفاده کرد ؟
واضح تر بگم مبشه به جای لود کردن پنل توی دیزانر این کارو بکنم و به کد آسیبی نرسه و درست اجرا بشه؟
اگه آره چطوری؟

 

 

فعلا تا اخرین نسخه basic4andriod امکانش نیست


 


RE: اموزش برنامه نویسی اندروید به همراه تمامی ابزارها - Amin_Mansouri - 10-15-2013

(10-10-2013، 08:59 PM)'haji110' نوشته: این مشکل برای چند کتابخونه دیگه هم پیش اومده.البته اسم اونا فرق میکنه.
یعنی اونا هم همینطورن؟

 


سلام
پکیج ها دوباره نصب کنید
این مشکل نباید باشه
 


RE: اموزش برنامه نویسی اندروید به همراه تمامی ابزارها - Amin_Mansouri - 10-15-2013

(10-12-2013، 01:05 PM)'seyedsharifi' نوشته: با درود
چطوری میتونم وقتی گوشی زنگ خورد دتکت کنم وشماره تلفن تماس گیرنده را بدست آورم
لطفا راهنمایی کنید
 

 



سلام اقای شریفی
تا حالا به چند پرسش شما پاسخ داده شده است؟
ولی اینجا رو محیط سوت و کوری میدونید !
این لطف شما و بعضی از کابران عزیزه

واسه کنترل کردن کسی که زنگ زده تا جایی که میدونم از کتابخانه CallLog (Phone library  باید استفاده کنی
پیروز باشید